CREATE PROCEDURE [dbo].[LX_GERA_DISTRIBUICAO_50_NEW_2] @ROMANEIO CHAR(8), @FILIAL VARCHAR(25), @TAB_PRECO CHAR(2), @COLECAO CHAR(6),
		@TIPO_VENDA VARCHAR(25), @MOEDA CHAR(6), @TRANSPORTADORA VARCHAR(25), @COND_PGTO CHAR(3), @REPRESENTANTE VARCHAR(25), @DATA DATETIME,
		@COD_PLANEJAMENTO INT, @PORCENTAGEM INT, @COND_PGTO_CLIENTE BIT, @TAB_PRECO_CLIENTE BIT, @FILIAL_DISPONIVEL VARCHAR(25), @TIPO_DISPONIVEL BIT,
		@MANTER_ITEM_ZERADO BIT, @DISPONIVEL CHAR(6), @UTILIZAR_GRADE_MINIMA BIT=0
AS
BEGIN

SET NOCOUNT ON

/* 09/09/2011 P/ MARCELO BIANO - CORREÇÃO NA DISTRIBUIÇÃO PACK + COR, PRODUTOS QUE VARIAM PREÇO POR TAMANHO */
/* 18/07/2011 P/ MARCELO BIANO - CORREÇÃO NA DISTRIBUIÇÃO DE PEDIDOS POR PACK + COR, ESTAVA DUPLICANDO AS QUANTIDADES EM ALGUNS CASOS.*/
/* 13/07/2010 P/ MARCELO BIANO - CORREÇÃO, NÃO ESTAVA RESPEITANDO CORRETAMENTE OS PERCENTUAIS DE DISTRIBUIÇÃO PARA CADA LOJA QUANDO PROCESSAMENTO ERA REALIZADO POR PACK + COR*/
/* 19/03/2010 P/ MARCELO BIANO - CORREÇÃO, QUANDO PROCESSAMENTO FOR REALIZADO POR PACK + COR, ESTAVA DISTRIBUINDO APENAS PARA A PRIMEIRA COR ENCONTRADA NO ROMANEIO*/
/* 27/02/2009 P/ MARCELO BIANO - CORREÇÃO PARA QUE EM CASOS QUE EXISTA ARREDONDAMENTO O SISTEMA RESPEITE A GRADE MÍNIMA( QUANDO PARÂMETRO @UTILIZAR_GRADE_MINIMA=1 )*/
/* 25/06/2008 P/ ALESSANDRO/MARCELO BIANO - CORREÇÃO NA DISTRIBUIÇÃO DOS TAMANHOS 13 E 22*/
/* 02/04/2007 P/ ALESSANDRO - EVITAR FILIAIS COM OS PERCENTUAIS ZERADOS, CASO A DISTRIBUIÇÃO NÃO SEJA POR GRADE MÍNIMA*/
/* 08/08/2007 P/ ALESSANDRO - CORRIGIR AS DATAS DE DIGITAÇÃO E EMISSÃO COM A DATA ATUAL*/
/* 27/10/2006 P/ ALESSANDRO - NOVO TRATAMENTO PARA GRADE MÍNIMA (FAZER ATÉ O LIMITE, BENEFICIANDO AS PRIMEIRAS FILIAIS DO CANAL) */
/* 25/04/2006 P/ ALESSANDRO - NOVO TRATAMENTO PARA TRANSPORTADORA/FRETE PAGO/TIPO DA CAIXA */
/* 21/09/2005 P/ ALESSANDRO - INCLUSÃO DA ROTINA DE GRADE MÍNIMA*/


/* VARIAVEIS */
DECLARE @GERENTE VARCHAR(25), @COMISSAO REAL, @COMISSAO_GERENTE REAL, @PORCENTAGEM_ACERTO REAL,
	@DESCONTO_COND_PGTO NUMERIC(14, 2), @ENCARGO NUMERIC(14, 2), @DESCONTO_ITEM NUMERIC(14, 2), @INCIDE_SOBRE_PRECO BIT,
	@COD_AGRUPAMENTO INT,
	@PRODUTO CHAR(12), @COR_PRODUTO CHAR(10), @PEDIDO CHAR(8), @NUMERO_TAMANHOS SMALLINT, @PONTEIRO_PRECO_TAM VARCHAR(48),
	@VARIA_PRECO_COR BIT, @VARIA_PRECO_TAM BIT,
	@TIPO_PACK SMALLINT, @LETRA_PACK CHAR(2), @PACKS VARCHAR(24),
	@ERRNO INT, @ERRMSG VARCHAR(255),
	@PEDIDO_VENDA CHAR(12),
	@STATUS CHAR(1),
	@CLIENTE_ATACADO VARCHAR(25), @PORCENTAGEM_QTDE NUMERIC(15, 5), @PRIORIDADE INT,
	@CODIGO_TAB_PRECO CHAR(2),
	@PRECO1 NUMERIC(14, 2), @PRECO2 NUMERIC(14, 2), @PRECO3 NUMERIC(14, 2), @PRECO4 NUMERIC(14, 2), @DESCONTO_ITEM_VENDA NUMERIC(14, 2),
	@CONTADOR SMALLINT, 
	@VALOR_R NUMERIC(14, 2), @QTDE_R INT, @ASPAS CHAR(1),
	@QTDE_D INT, @QTDE_ES INT, @QTDE_P INT, @QTDE INT, @LOOP SMALLINT,
	@PRODUTO_ATUAL CHAR(12),@COR_PRODUTO_ATUAL CHAR(10), @CONTROLE SMALLINT, @COR_PACK CHAR(12),
	@D1  INT, @D2  INT, @D3  INT, @D4  INT, @D5  INT, @D6  INT, @D7  INT, @D8  INT, @D9  INT, @D10 INT, @D11 INT, @D12 INT,
	@D13 INT, @D14 INT, @D15 INT, @D16 INT, @D17 INT, @D18 INT, @D19 INT, @D20 INT, @D21 INT, @D22 INT, @D23 INT, @D24 INT,
	@D25 INT, @D26 INT, @D27 INT, @D28 INT, @D29 INT, @D30 INT, @D31 INT, @D32 INT, @D33 INT, @D34 INT, @D35 INT, @D36 INT,
	@D37 INT, @D38 INT, @D39 INT, @D40 INT, @D41 INT, @D42 INT, @D43 INT, @D44 INT, @D45 INT, @D46 INT, @D47 INT, @D48 INT,
	@Q1  NUMERIC(15, 5), @Q2  NUMERIC(15, 5), @Q3  NUMERIC(15, 5), @Q4  NUMERIC(15, 5), @Q5  NUMERIC(15, 5), @Q6  NUMERIC(15, 5), @Q7  NUMERIC(15, 5), @Q8  NUMERIC(15, 5), @Q9  NUMERIC(15, 5), @Q10 NUMERIC(15, 5), @Q11 NUMERIC(15, 5), @Q12 NUMERIC(15, 5),
	@Q13 NUMERIC(15, 5), @Q14 NUMERIC(15, 5), @Q15 NUMERIC(15, 5), @Q16 NUMERIC(15, 5), @Q17 NUMERIC(15, 5), @Q18 NUMERIC(15, 5), @Q19 NUMERIC(15, 5), @Q20 NUMERIC(15, 5), @Q21 NUMERIC(15, 5), @Q22 NUMERIC(15, 5), @Q23 NUMERIC(15, 5), @Q24 NUMERIC(15, 5),
	@Q25 NUMERIC(15, 5), @Q26 NUMERIC(15, 5), @Q27 NUMERIC(15, 5), @Q28 NUMERIC(15, 5), @Q29 NUMERIC(15, 5), @Q30 NUMERIC(15, 5), @Q31 NUMERIC(15, 5), @Q32 NUMERIC(15, 5), @Q33 NUMERIC(15, 5), @Q34 NUMERIC(15, 5), @Q35 NUMERIC(15, 5), @Q36 NUMERIC(15, 5),
	@Q37 NUMERIC(15, 5), @Q38 NUMERIC(15, 5), @Q39 NUMERIC(15, 5), @Q40 NUMERIC(15, 5), @Q41 NUMERIC(15, 5), @Q42 NUMERIC(15, 5), @Q43 NUMERIC(15, 5), @Q44 NUMERIC(15, 5), @Q45 NUMERIC(15, 5), @Q46 NUMERIC(15, 5), @Q47 NUMERIC(15, 5), @Q48 NUMERIC(15, 5),
	@ES1  NUMERIC(15, 5), @ES2  NUMERIC(15, 5), @ES3  NUMERIC(15, 5), @ES4  NUMERIC(15, 5), @ES5  NUMERIC(15, 5), @ES6  NUMERIC(15, 5), @ES7  NUMERIC(15, 5), @ES8  NUMERIC(15, 5), @ES9  NUMERIC(15, 5), @ES10 NUMERIC(15, 5), @ES11 NUMERIC(15, 5), @ES12 NUMERIC(15, 5),
	@ES13 NUMERIC(15, 5), @ES14 NUMERIC(15, 5), @ES15 NUMERIC(15, 5), @ES16 NUMERIC(15, 5), @ES17 NUMERIC(15, 5), @ES18 NUMERIC(15, 5), @ES19 NUMERIC(15, 5), @ES20 NUMERIC(15, 5), @ES21 NUMERIC(15, 5), @ES22 NUMERIC(15, 5), @ES23 NUMERIC(15, 5), @ES24 NUMERIC(15, 5),
	@ES25 NUMERIC(15, 5), @ES26 NUMERIC(15, 5), @ES27 NUMERIC(15, 5), @ES28 NUMERIC(15, 5), @ES29 NUMERIC(15, 5), @ES30 NUMERIC(15, 5), @ES31 NUMERIC(15, 5), @ES32 NUMERIC(15, 5), @ES33 NUMERIC(15, 5), @ES34 NUMERIC(15, 5), @ES35 NUMERIC(15, 5), @ES36 NUMERIC(15, 5),
	@ES37 NUMERIC(15, 5), @ES38 NUMERIC(15, 5), @ES39 NUMERIC(15, 5), @ES40 NUMERIC(15, 5), @ES41 NUMERIC(15, 5), @ES42 NUMERIC(15, 5), @ES43 NUMERIC(15, 5), @ES44 NUMERIC(15, 5), @ES45 NUMERIC(15, 5), @ES46 NUMERIC(15, 5), @ES47 NUMERIC(15, 5), @ES48 NUMERIC(15, 5),
	@P1 INT,  @P2 INT,  @P3 INT,  @P4 INT,  @P5 INT,  @P6 INT,  @P7 INT,  @P8 INT,  @P9 INT,  @P10 INT, @P11 INT, @P12 INT, @P13 INT, @P14 INT, @P15 INT, @P16 INT, @P17 INT, @P18 INT, @P19 INT, @P20 INT, @P21 INT, @P22 INT, @P23 INT, @P24 INT,
	@P25 INT, @P26 INT, @P27 INT, @P28 INT, @P29 INT, @P30 INT, @P31 INT, @P32 INT, @P33 INT, @P34 INT, @P35 INT, @P36 INT, @P37 INT, @P38 INT, @P39 INT, @P40 INT, @P41 INT, @P42 INT, @P43 INT, @P44 INT, @P45 INT, @P46 INT, @P47 INT, @P48 INT,
	@SELECT VARCHAR(8000), @SELECT1 VARCHAR(8000), @SELECT2 VARCHAR(8000), @SELECT3 VARCHAR(1000), @COND_PARAM CHAR(3), @TIPO_CAIXA CHAR(8), @ENTREGA_CIF BIT,  @TRANSPORTADORA_CLIENTE VARCHAR(25),  @TRANSP_REDESPACHO VARCHAR(25), @UITILIZA_TRANSP_CLIENTE BIT, @TIPO_FRETE CHAR(2) 


				

--GRADE MÍNIMA
DECLARE @GM1  INT , @GM2  INT , @GM3  INT , @GM4  INT , @GM5  INT , @GM6  INT , @GM7  INT , @GM8  INT , 
	@GM9  INT , @GM10 INT , @GM11 INT , @GM12 INT ,	@GM13 INT , @GM14 INT , @GM15 INT , @GM16 INT , 
	@GM17 INT , @GM18 INT , @GM19 INT , @GM20 INT , @GM21 INT , @GM22 INT , @GM23 INT , @GM24 INT ,	
	@GM25 INT , @GM26 INT , @GM27 INT , @GM28 INT , @GM29 INT , @GM30 INT , @GM31 INT , @GM32 INT , 
	@GM33 INT , @GM34 INT , @GM35 INT , @GM36 INT ,	@GM37 INT , @GM38 INT , @GM39 INT , @GM40 INT , 
	@GM41 INT , @GM42 INT , @GM43 INT , @GM44 INT , @GM45 INT , @GM46 INT , @GM47 INT , @GM48 INT , @GRADE_MINIMA INT, @QTDE_FILIAIS INT

--RESET DOS VALORES
	SELECT @GM1  = 0 , @GM2  = 0 , @GM3  = 0 , @GM4  = 0 , @GM5  = 0 , @GM6  = 0 , @GM7  = 0 , @GM8  = 0 , 
	@GM9  = 0 , @GM10 = 0 , @GM11 = 0 , @GM12 = 0 ,
	@GM13 = 0 , @GM14 = 0 , @GM15 = 0 , @GM16 = 0 , @GM17 = 0 , @GM18 = 0 , @GM19 = 0 , @GM20 = 0 , @GM21 = 0 , @GM22 = 0 , @GM23 = 0 , @GM24 = 0 ,
	@GM25 = 0 , @GM26 = 0 , @GM27 = 0 , @GM28 = 0 , @GM29 = 0 , @GM30 = 0 , @GM31 = 0 , @GM32 = 0 , @GM33 = 0 , @GM34 = 0 , @GM35 = 0 , @GM36 = 0 ,
	@GM37 = 0 , @GM38 = 0 , @GM39 = 0 , @GM40 = 0 , @GM41 = 0 , @GM42 = 0 , @GM43 = 0 , @GM44 = 0 , @GM45 = 0 , @GM46 = 0 , @GM47 = 0 , @GM48 = 0, @GRADE_MINIMA = 0, @QTDE_FILIAIS = 0
-------------------

--CAIXA PADRÃO
SELECT @TIPO_CAIXA = DBO.FX_PARAMETRO_EMPRESA('TIPO_CAIXA_PADRAO', 0)
--UTILIZA A TRANSPORTADORA DO CLIENTE
SELECT @UITILIZA_TRANSP_CLIENTE = CASE WHEN UPPER(ISNULL(DBO.FX_PARAMETRO_EMPRESA('DISTRIB_UTILIZA_TRANSP_CL', 0), '.F.')) = '.T.' THEN 1 ELSE 0 END

SELECT @TIPO_FRETE=TIPO_FRETE, @ENTREGA_CIF = ISNULL(FRETE_PAGO, 0)  FROM TIPO_FRETE
WHERE TIPO_FRETE = DBO.FX_PARAMETRO_EMPRESA('TIPO_FRETE_DISTRIBUICAO', 0)


BEGIN TRANSACTION 


/* CARREGA DADOS PARA MONTAR OS PEDIDOS */
SET @ASPAS = CHAR(39)
/* REPRESENTANTE/GERENTE */
SELECT @GERENTE = A.GERENTE, @COMISSAO = A.COMISSAO, @COMISSAO_GERENTE = B.COMISSAO, @PORCENTAGEM_ACERTO = A.PORCENTAGEM_ACERTO
	FROM REPRESENTANTES A LEFT JOIN REPRESENTANTES B ON A.GERENTE = B.REPRESENTANTE 
	WHERE A.REPRESENTANTE = @REPRESENTANTE

/* CONDIÇÃO DE PAGAMENTO (DESCONTO/ENCARGOS) */
SELECT 	@DESCONTO_COND_PGTO = CASE WHEN DESCONTO_FATURAMENTO = 0 THEN ISNULL(DESCONTO, 0) ELSE 0 END,
	@ENCARGO = CASE WHEN ENCARGO_FATURAMENTO = 0 THEN ISNULL(ENCARGO, 0) ELSE 0 END,
	@DESCONTO_ITEM = CASE WHEN DESCONTO_ITEM_FATURAMENTO = 0 THEN ISNULL(DESCONTO_ITEM, 0) ELSE 0 END,
	@INCIDE_SOBRE_PRECO = ISNULL(INCIDE_SOBRE_PRECO, 0)
	FROM COND_ATAC_PGTOS 
	WHERE CONDICAO_PGTO = @COND_PGTO	
/* COD_AGRUPAMENTO */
SELECT @COD_AGRUPAMENTO = COD_AGRUPAMENTO FROM GIV_PLANEJAMENTO WHERE COD_PLANEJAMENTO = @COD_PLANEJAMENTO

/* TABELA TEMPORÁRIA PARA PROCESSO DE PACK COR */
/*IF EXISTS (SELECT NAME FROM TEMPDB.DBO.SYSOBJECTS WHERE NAME LIKE '#TMP_ESTOQUE_DISTRIBUICAO%' AND TYPE = 'U')
	DROP TABLE #TMP_ESTOQUE_DISTRIBUICAO*/

CREATE TABLE #TMP_ESTOQUE_DISTRIBUICAO (COR_PRODUTO CHAR(10) COLLATE DATABASE_DEFAULT, 
	D1  INT, D2  INT, D3  INT, D4  INT, D5  INT, D6  INT, D7  INT, D8  INT, D9  INT, D10 INT, D11 INT, D12 INT, D13 INT, D14 INT, D15 INT, D16 INT, D17 INT, D18 INT, D19 INT, D20 INT, D21 INT, D22 INT, D23 INT, D24 INT,
	D25 INT, D26 INT, D27 INT, D28 INT, D29 INT, D30 INT, D31 INT, D32 INT, D33 INT, D34 INT, D35 INT, D36 INT, D37 INT, D38 INT, D39 INT, D40 INT, D41 INT, D42 INT, D43 INT, D44 INT, D45 INT, D46 INT, D47 INT, D48 INT)


/* CURSOR COM ITENS (PRODUTO + COR) A SEREM PROCESSADOS */
DECLARE CURSOR_PRODUTOS CURSOR FOR
	SELECT A.PRODUTO, A.COR_PRODUTO, A.ORDEM_PRODUCAO, B.NUMERO_TAMANHOS, C.PONTEIRO_PRECO_TAM, C.VARIA_PRECO_COR, C.VARIA_PRECO_TAM
		FROM ROMANEIOS_PRODUTO A JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO JOIN PRODUTOS_TAMANHOS B ON C.GRADE = B.GRADE 
		WHERE A.ROMANEIO = @ROMANEIO AND A.FILIAL = @FILIAL AND A.STATUS = 'A'
		ORDER BY A.PRODUTO, A.COR_PRODUTO
OPEN CURSOR_PRODUTOS
FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
WHILE @@FETCH_STATUS = 0
BEGIN


	/*GRADE MÍNIMA*/
	IF @UTILIZAR_GRADE_MINIMA = 1 AND EXISTS(SELECT 1 FROM SYSOBJECTS WHERE NAME= 'LX_GRADE_MINIMA_PRODUTO' AND XTYPE='P')
	BEGIN
		EXEC  LX_GRADE_MINIMA_PRODUTO @PRODUTO, @COR_PRODUTO,
						@GM1  OUTPUT , @GM2  OUTPUT , @GM3  OUTPUT , @GM4  OUTPUT , @GM5  OUTPUT , @GM6  OUTPUT , @GM7  OUTPUT , @GM8  OUTPUT , 
						@GM9  OUTPUT , @GM10 OUTPUT , @GM11 OUTPUT , @GM12 OUTPUT ,
						@GM13 OUTPUT , @GM14 OUTPUT , @GM15 OUTPUT , @GM16 OUTPUT , @GM17 OUTPUT , @GM18 OUTPUT , @GM19 OUTPUT , @GM20 OUTPUT , @GM21 OUTPUT , @GM22 OUTPUT , @GM23 OUTPUT , @GM24 OUTPUT ,
						@GM25 OUTPUT , @GM26 OUTPUT , @GM27 OUTPUT , @GM28 OUTPUT , @GM29 OUTPUT , @GM30 OUTPUT , @GM31 OUTPUT , @GM32 OUTPUT , @GM33 OUTPUT , @GM34 OUTPUT , @GM35 OUTPUT , @GM36 OUTPUT ,
						@GM37 OUTPUT , @GM38 OUTPUT , @GM39 OUTPUT , @GM40 OUTPUT , @GM41 OUTPUT , @GM42 OUTPUT , @GM43 OUTPUT , @GM44 OUTPUT , @GM45 OUTPUT , @GM46 OUTPUT , @GM47 OUTPUT , @GM48, @GRADE_MINIMA OUTPUT
			
	END
	/*------------*/

	/* VERIFICA TIPO DE PROCESSO DE ACORDO COM O ITEM DO PEDIDO DE COMPRA */
	/* SETA VARIAVEL @TIPO_PACK PARA OS VALORES : 0 -> QTDE, 1 -> PACK, 2 -> PACK_COR */	
	/* PEGA SOMENTE O PRIMEIRO PACK PARA FAZER A VERIFICACAO */
	SELECT @TIPO_PACK = 0
	SELECT TOP 1 @PACKS = PACKS
		FROM COMPRAS_PRODUTO 
		WHERE PEDIDO = @PEDIDO AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO

	IF NOT ISNULL(@PACKS, '') = ''
	BEGIN
		IF LTRIM(RTRIM(SUBSTRING(@PACKS, 7, 2))) <> '' AND CONVERT(INT, SUBSTRING(@PACKS, 9, 3)) <> 0
			SELECT @TIPO_PACK = 0
		ELSE
		BEGIN
			SELECT @LETRA_PACK = SUBSTRING(@PACKS, 1, 2)
			SELECT TOP 1 @TIPO_PACK = CASE WHEN ISNULL(INDICA_PACK_COR, 0) = 0 THEN 1 ELSE 2 END
				FROM PRODUTOS_PACKS_PERMITIDOS
				WHERE PRODUTO = @PRODUTO AND PACK = @LETRA_PACK
		END
	END

	/* SE PROCESSO POR QTDE OU PACK */
	IF @TIPO_PACK <> 2
	BEGIN
		
		/* APAGA VENDAS_PRODUTO */
		DECLARE CURSOR_DELETE CURSOR FOR 
			SELECT DISTINCT A.PEDIDO
				FROM VENDAS A JOIN VENDAS_PRODUTO B ON A.PEDIDO = B.PEDIDO
				WHERE A.ROMANEIO = @ROMANEIO AND A.FILIAL = @FILIAL AND B.PRODUTO = @PRODUTO AND B.COR_PRODUTO = @COR_PRODUTO
		OPEN CURSOR_DELETE
		FETCH NEXT FROM CURSOR_DELETE INTO @PEDIDO_VENDA
		WHILE @@FETCH_STATUS = 0
		BEGIN
			DELETE FROM VENDAS_PRODUTO WHERE PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
			IF NOT EXISTS(SELECT * FROM VENDAS_PRODUTO WHERE PEDIDO = @PEDIDO_VENDA)
				DELETE FROM VENDAS WHERE PEDIDO = @PEDIDO_VENDA
			FETCH NEXT FROM CURSOR_DELETE INTO @PEDIDO_VENDA
		END
		CLOSE CURSOR_DELETE
		DEALLOCATE CURSOR_DELETE
		/* */
		SET @STATUS = 'P'		
		/* DISPONIVEL */
		SELECT @D1 = 0, @D2 = 0, @D3 = 0, @D4 = 0, @D5 = 0, @D6 = 0, @D7 = 0, @D8 = 0, @D9 = 0, @D10 = 0, @D11 = 0, @D12 = 0, @D13 = 0, @D14 = 0, @D15 = 0, @D16 = 0, @D17 = 0, @D18 = 0, @D19 = 0, @D20 = 0, @D21 = 0, @D22 = 0, @D23 = 0, @D24 = 0, @D25 = 0, @D26 = 0, @D27 = 0, @D28 = 0, @D29 = 0, @D30 = 0, @D31 = 0, @D32 = 0, @D33 = 0, @D34 = 0, @D35 = 0, @D36 = 0, @D37 = 0, @D38 = 0, @D39 = 0, @D40 = 0, @D41 = 0, @D42 = 0, @D43 = 0, @D44 = 0, @D45 = 0, @D46 = 0, @D47 = 0, @D48 = 0
		SELECT  @D1  = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO1  ELSE CE1  END), 0), @D2  = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO2  ELSE CE2  END), 0), @D3  = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO3  ELSE CE3  END), 0), @D4  = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO4  ELSE CE4  END), 0), @D5  = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO5  ELSE CE5  END), 0), @D6  = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO6  ELSE CE6  END), 0), @D7  = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO7  ELSE CE7  END), 0), @D8  = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO8  ELSE CE8  END), 0), 
			@D9  = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO9  ELSE CE9  END), 0), @D10 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO10 ELSE CE10 END), 0), @D11 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO11 ELSE CE11 END), 0), @D12 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO12 ELSE CE12 END), 0), @D13 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO13 ELSE CE13 END), 0), @D14 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO14 ELSE CE14 END), 0), @D15 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO15 ELSE CE15 END), 0), @D16 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO16 ELSE CE16 END), 0), 
			@D17 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO17 ELSE CE17 END), 0), @D18 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO18 ELSE CE18 END), 0), @D19 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO19 ELSE CE19 END), 0), @D20 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO20 ELSE CE20 END), 0), @D21 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO21 ELSE CE21 END), 0), @D22 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO22 ELSE CE22 END), 0), @D23 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO23 ELSE CE23 END), 0), @D24 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO24 ELSE CE24 END), 0),
			@D25 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO25 ELSE CE25 END), 0), @D26 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO26 ELSE CE26 END), 0), @D27 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO27 ELSE CE27 END), 0), @D28 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO28 ELSE CE28 END), 0), @D29 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO29 ELSE CE29 END), 0), @D30 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO30 ELSE CE30 END), 0), @D31 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO31 ELSE CE31 END), 0), @D32 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO32 ELSE CE32 END), 0), 
			@D33 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO33 ELSE CE33 END), 0), @D34 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO34 ELSE CE34 END), 0), @D35 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO35 ELSE CE35 END), 0), @D36 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO36 ELSE CE36 END), 0), @D37 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO37 ELSE CE37 END), 0), @D38 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO38 ELSE CE38 END), 0), @D39 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO39 ELSE CE39 END), 0), @D40 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO40 ELSE CE40 END), 0), 
			@D41 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO41 ELSE CE41 END), 0), @D42 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO42 ELSE CE42 END), 0), @D43 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO43 ELSE CE43 END), 0), @D44 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO44 ELSE CE44 END), 0), @D45 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO45 ELSE CE45 END), 0), @D46 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO46 ELSE CE46 END), 0), @D47 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO47 ELSE CE47 END), 0), @D48 = ISNULL(SUM(CASE WHEN @TIPO_DISPONIVEL = 1 THEN CO48 ELSE CE48 END), 0)
			FROM COMPRAS A JOIN COMPRAS_PRODUTO B ON A.PEDIDO = B.PEDIDO 
			WHERE A.PEDIDO = @PEDIDO AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
	
		IF CHARINDEX('E', @DISPONIVEL) > 0
		BEGIN
			SELECT  @ES1  = DBO.LX_POSITIVO_INT(ISNULL(ES1,  0)), @ES2  = DBO.LX_POSITIVO_INT(ISNULL(ES2,  0)), @ES3  = DBO.LX_POSITIVO_INT(ISNULL(ES3,  0)), @ES4  = DBO.LX_POSITIVO_INT(ISNULL(ES4,  0)), @ES5  = DBO.LX_POSITIVO_INT(ISNULL(ES5,  0)), @ES6  = DBO.LX_POSITIVO_INT(ISNULL(ES6,  0)), @ES7  = DBO.LX_POSITIVO_INT(ISNULL(ES7,  0)), @ES8  = DBO.LX_POSITIVO_INT(ISNULL(ES8,  0)), 
				@ES9  = DBO.LX_POSITIVO_INT(ISNULL(ES9,  0)), @ES10 = DBO.LX_POSITIVO_INT(ISNULL(ES10, 0)), @ES11 = DBO.LX_POSITIVO_INT(ISNULL(ES11, 0)), @ES12 = DBO.LX_POSITIVO_INT(ISNULL(ES12, 0)), @ES13 = DBO.LX_POSITIVO_INT(ISNULL(ES13, 0)), @ES14 = DBO.LX_POSITIVO_INT(ISNULL(ES14, 0)), @ES15 = DBO.LX_POSITIVO_INT(ISNULL(ES15, 0)), @ES16 = DBO.LX_POSITIVO_INT(ISNULL(ES16, 0)), 
				@ES17 = DBO.LX_POSITIVO_INT(ISNULL(ES17, 0)), @ES18 = DBO.LX_POSITIVO_INT(ISNULL(ES18, 0)), @ES19 = DBO.LX_POSITIVO_INT(ISNULL(ES19, 0)), @ES20 = DBO.LX_POSITIVO_INT(ISNULL(ES20, 0)), @ES21 = DBO.LX_POSITIVO_INT(ISNULL(ES21, 0)), @ES22 = DBO.LX_POSITIVO_INT(ISNULL(ES22, 0)), @ES23 = DBO.LX_POSITIVO_INT(ISNULL(ES23, 0)), @ES24 = DBO.LX_POSITIVO_INT(ISNULL(ES24, 0)), 
				@ES25 = DBO.LX_POSITIVO_INT(ISNULL(ES25, 0)), @ES26 = DBO.LX_POSITIVO_INT(ISNULL(ES26, 0)), @ES27 = DBO.LX_POSITIVO_INT(ISNULL(ES27, 0)), @ES28 = DBO.LX_POSITIVO_INT(ISNULL(ES28, 0)), @ES29 = DBO.LX_POSITIVO_INT(ISNULL(ES29, 0)), @ES30 = DBO.LX_POSITIVO_INT(ISNULL(ES30, 0)), @ES31 = DBO.LX_POSITIVO_INT(ISNULL(ES31, 0)), @ES32 = DBO.LX_POSITIVO_INT(ISNULL(ES32, 0)), 
				@ES33 = DBO.LX_POSITIVO_INT(ISNULL(ES33, 0)), @ES34 = DBO.LX_POSITIVO_INT(ISNULL(ES34, 0)), @ES35 = DBO.LX_POSITIVO_INT(ISNULL(ES35, 0)), @ES36 = DBO.LX_POSITIVO_INT(ISNULL(ES36, 0)), @ES37 = DBO.LX_POSITIVO_INT(ISNULL(ES37, 0)), @ES38 = DBO.LX_POSITIVO_INT(ISNULL(ES38, 0)), @ES39 = DBO.LX_POSITIVO_INT(ISNULL(ES39, 0)), @ES40 = DBO.LX_POSITIVO_INT(ISNULL(ES40, 0)), 
				@ES41 = DBO.LX_POSITIVO_INT(ISNULL(ES41, 0)), @ES42 = DBO.LX_POSITIVO_INT(ISNULL(ES42, 0)), @ES43 = DBO.LX_POSITIVO_INT(ISNULL(ES43, 0)), @ES44 = DBO.LX_POSITIVO_INT(ISNULL(ES44, 0)), @ES45 = DBO.LX_POSITIVO_INT(ISNULL(ES45, 0)), @ES46 = DBO.LX_POSITIVO_INT(ISNULL(ES46, 0)), @ES47 = DBO.LX_POSITIVO_INT(ISNULL(ES47, 0)), @ES48 = DBO.LX_POSITIVO_INT(ISNULL(ES48, 0))
				FROM ESTOQUE_PRODUTOS WHERE FILIAL = @FILIAL_DISPONIVEL AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO


			SELECT 	@ES1  = DBO.LX_POSITIVO_INT(@ES1  - ISNULL(SUM(E1),  0)), @ES2  = DBO.LX_POSITIVO_INT(@ES2  - ISNULL(SUM(E2),  0)), @ES3  = DBO.LX_POSITIVO_INT(@ES3  - ISNULL(SUM(E3),  0)), @ES4  = DBO.LX_POSITIVO_INT(@ES4  - ISNULL(SUM(E4),  0)), @ES5  = DBO.LX_POSITIVO_INT(@ES5  - ISNULL(SUM(E5),  0)), @ES6  = DBO.LX_POSITIVO_INT(@ES6  - ISNULL(SUM(E6),  0)), @ES7  = DBO.LX_POSITIVO_INT(@ES7  - ISNULL(SUM(E7),  0)), @ES8  = DBO.LX_POSITIVO_INT(@ES8  - ISNULL(SUM(E8),  0)),
				@ES9  = DBO.LX_POSITIVO_INT(@ES9  - ISNULL(SUM(E9),  0)), @ES10 = DBO.LX_POSITIVO_INT(@ES10 - ISNULL(SUM(E10), 0)), @ES11 = DBO.LX_POSITIVO_INT(@ES11 - ISNULL(SUM(E11), 0)), @ES12 = DBO.LX_POSITIVO_INT(@ES12 - ISNULL(SUM(E12), 0)), @ES13 = DBO.LX_POSITIVO_INT(@ES13 - ISNULL(SUM(E13), 0)), @ES14 = DBO.LX_POSITIVO_INT(@ES14 - ISNULL(SUM(E14), 0)), @ES15 = DBO.LX_POSITIVO_INT(@ES15 - ISNULL(SUM(E15), 0)), @ES16 = DBO.LX_POSITIVO_INT(@ES16 - ISNULL(SUM(E16), 0)),
				@ES17 = DBO.LX_POSITIVO_INT(@ES17 - ISNULL(SUM(E17), 0)), @ES18 = DBO.LX_POSITIVO_INT(@ES18 - ISNULL(SUM(E18), 0)), @ES19 = DBO.LX_POSITIVO_INT(@ES19 - ISNULL(SUM(E19), 0)), @ES20 = DBO.LX_POSITIVO_INT(@ES20 - ISNULL(SUM(E20), 0)), @ES21 = DBO.LX_POSITIVO_INT(@ES21 - ISNULL(SUM(E21), 0)), @ES22 = DBO.LX_POSITIVO_INT(@ES22 - ISNULL(SUM(E22), 0)), @ES23 = DBO.LX_POSITIVO_INT(@ES23 - ISNULL(SUM(E23), 0)), @ES24 = DBO.LX_POSITIVO_INT(@ES24 - ISNULL(SUM(E24), 0)),
				@ES25 = DBO.LX_POSITIVO_INT(@ES25 - ISNULL(SUM(E25), 0)), @ES26 = DBO.LX_POSITIVO_INT(@ES26 - ISNULL(SUM(E26), 0)), @ES27 = DBO.LX_POSITIVO_INT(@ES27 - ISNULL(SUM(E27), 0)), @ES28 = DBO.LX_POSITIVO_INT(@ES28 - ISNULL(SUM(E28), 0)), @ES29 = DBO.LX_POSITIVO_INT(@ES29 - ISNULL(SUM(E29), 0)), @ES30 = DBO.LX_POSITIVO_INT(@ES30 - ISNULL(SUM(E30), 0)), @ES31 = DBO.LX_POSITIVO_INT(@ES31 - ISNULL(SUM(E31), 0)), @ES32 = DBO.LX_POSITIVO_INT(@ES32 - ISNULL(SUM(E32), 0)), 
				@ES33 = DBO.LX_POSITIVO_INT(@ES33 - ISNULL(SUM(E33), 0)), @ES34 = DBO.LX_POSITIVO_INT(@ES34 - ISNULL(SUM(E34), 0)), @ES35 = DBO.LX_POSITIVO_INT(@ES35 - ISNULL(SUM(E35), 0)), @ES36 = DBO.LX_POSITIVO_INT(@ES36 - ISNULL(SUM(E36), 0)), @ES37 = DBO.LX_POSITIVO_INT(@ES37 - ISNULL(SUM(E37), 0)), @ES38 = DBO.LX_POSITIVO_INT(@ES38 - ISNULL(SUM(E38), 0)), @ES39 = DBO.LX_POSITIVO_INT(@ES39 - ISNULL(SUM(E39), 0)), @ES30 = DBO.LX_POSITIVO_INT(@ES40 - ISNULL(SUM(E40), 0)), 
				@ES41 = DBO.LX_POSITIVO_INT(@ES41 - ISNULL(SUM(E41), 0)), @ES42 = DBO.LX_POSITIVO_INT(@ES42 - ISNULL(SUM(E42), 0)), @ES43 = DBO.LX_POSITIVO_INT(@ES43 - ISNULL(SUM(E43), 0)), @ES44 = DBO.LX_POSITIVO_INT(@ES44 - ISNULL(SUM(E44), 0)), @ES45 = DBO.LX_POSITIVO_INT(@ES45 - ISNULL(SUM(E45), 0)), @ES46 = DBO.LX_POSITIVO_INT(@ES46 - ISNULL(SUM(E46), 0)), @ES47 = DBO.LX_POSITIVO_INT(@ES47 - ISNULL(SUM(E47), 0)), @ES48 = DBO.LX_POSITIVO_INT(@ES48 - ISNULL(SUM(E48), 0))
				FROM VENDAS_PROD_EMBALADO WHERE PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO AND FILIAL = @FILIAL_DISPONIVEL
			SELECT  @D1  = @D1  + @ES1,  @D2  = @D2  + @ES2,  @D3  = @D3  + @ES3,  @D4  = @D4  + @ES4,  @D5  = @D5  + @ES5,  @D6  = @D6  + @ES6,  @D7  = @D7  + @ES7,  @D8  = @D8  + @ES8,  @D9  = @D9  + @ES9,  @D10 = @D10 + @ES10, @D11 = @D11 + @ES11, @D12 = @D12 + @ES12, @D13 = @D13 + @ES13, @D14 = @D14 + @ES14, @D15 = @D15 + @ES15, @D16 = @D16 + @ES16, @D17 = @D17 + @ES17, @D18 = @D18 + @ES18, @D19 = @D19 + @ES19, @D20 = @D20 + @ES20, @D21 = @D21 + @ES21, @D22 = @D22 + @ES22, @D23 = @D23 + @ES23, @D24 = @D24 + @ES24,
				@D25 = @D25 + @ES25, @D26 = @D26 + @ES26, @D27 = @D27 + @ES27, @D28 = @D28 + @ES28, @D29 = @D29 + @ES29, @D30 = @D30 + @ES30, @D31 = @D31 + @ES31, @D32 = @D32 + @ES32, @D33 = @D33 + @ES33, @D34 = @D34 + @ES34, @D35 = @D35 + @ES35, @D36 = @D36 + @ES36, @D37 = @D37 + @ES37, @D38 = @D38 + @ES38, @D39 = @D39 + @ES39, @D40 = @D40 + @ES40, @D41 = @D41 + @ES41, @D42 = @D42 + @ES42, @D43 = @D43 + @ES43, @D44 = @D44 + @ES44, @D45 = @D45 + @ES45, @D46 = @D46 + @ES46, @D47 = @D47 + @ES47, @D48 = @D48 + @ES48
		END


		/* ATUALIZA PARA % DO DISPONÍVEL QUE SERÁ UTILIZADO */
		SELECT 	@D1  = ((@D1  * @PORCENTAGEM) / 100), @D2  = ((@D2  * @PORCENTAGEM) / 100), @D3  = ((@D3  * @PORCENTAGEM) / 100), @D4  = ((@D4  * @PORCENTAGEM) / 100), @D5  = ((@D5  * @PORCENTAGEM) / 100), @D6  = ((@D6  * @PORCENTAGEM) / 100), @D7  = ((@D7  * @PORCENTAGEM) / 100), @D8  = ((@D8  * @PORCENTAGEM) / 100), @D9  = ((@D9  * @PORCENTAGEM) / 100), @D10 = ((@D10 * @PORCENTAGEM) / 100), @D11 = ((@D11 * @PORCENTAGEM) / 100), @D12 = ((@D12 * @PORCENTAGEM) / 100),
			@D13 = ((@D13 * @PORCENTAGEM) / 100), @D14 = ((@D14 * @PORCENTAGEM) / 100), @D15 = ((@D15 * @PORCENTAGEM) / 100), @D16 = ((@D16 * @PORCENTAGEM) / 100), @D17 = ((@D17 * @PORCENTAGEM) / 100), @D18 = ((@D18 * @PORCENTAGEM) / 100), @D19 = ((@D19 * @PORCENTAGEM) / 100), @D20 = ((@D20 * @PORCENTAGEM) / 100), @D21 = ((@D21 * @PORCENTAGEM) / 100), @D22 = ((@D22 * @PORCENTAGEM) / 100), @D23 = ((@D23 * @PORCENTAGEM) / 100), @D24 = ((@D24 * @PORCENTAGEM) / 100),
			@D25 = ((@D25 * @PORCENTAGEM) / 100), @D26 = ((@D26 * @PORCENTAGEM) / 100), @D27 = ((@D27 * @PORCENTAGEM) / 100), @D28 = ((@D28 * @PORCENTAGEM) / 100), @D29 = ((@D29 * @PORCENTAGEM) / 100), @D30 = ((@D30 * @PORCENTAGEM) / 100), @D31 = ((@D31 * @PORCENTAGEM) / 100), @D32 = ((@D32 * @PORCENTAGEM) / 100), @D33 = ((@D33 * @PORCENTAGEM) / 100), @D34 = ((@D34 * @PORCENTAGEM) / 100), @D35 = ((@D35 * @PORCENTAGEM) / 100), @D36 = ((@D36 * @PORCENTAGEM) / 100),
			@D37 = ((@D37 * @PORCENTAGEM) / 100), @D38 = ((@D38 * @PORCENTAGEM) / 100), @D39 = ((@D39 * @PORCENTAGEM) / 100), @D40 = ((@D40 * @PORCENTAGEM) / 100), @D41 = ((@D41 * @PORCENTAGEM) / 100), @D42 = ((@D42 * @PORCENTAGEM) / 100), @D43 = ((@D43 * @PORCENTAGEM) / 100), @D44 = ((@D44 * @PORCENTAGEM) / 100), @D45 = ((@D45 * @PORCENTAGEM) / 100), @D46 = ((@D46 * @PORCENTAGEM) / 100), @D47 = ((@D47 * @PORCENTAGEM) / 100), @D48 = ((@D48 * @PORCENTAGEM) / 100)

		SELECT @QTDE_D = (@D1 + @D2 + @D3 + @D4 + @D5 + @D6 + @D7 + @D8 + @D9 + @D10 + @D11 + @D12 + @D13 + @D14 + @D15 + @D16 + @D17 + @D18 + @D19 + @D20 + @D21 + @D22 + @D23 + @D24 + @D25 + @D26 + @D27 + @D28 + @D29 + @D30 + @D31 + @D32 + @D33 + @D34 + @D35 + @D36 + @D37 + @D38 + @D39 + @D40 + @D41 + @D42 + @D43 + @D44 + @D45 + @D46 + @D47 + @D48)

		/* SE DISPONIVEL = 0 (ZERO) */
		IF @QTDE_D = 0
		BEGIN
			SELECT @STATUS = 'F'			
			UPDATE ROMANEIOS_PRODUTO SET STATUS = @STATUS, FILTROS_PROCESSO = 'PROCESSO AUTOMÁTICO DE DISTRIBUIÇÃO.'
				WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
			FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
			CONTINUE
		END

		IF @TIPO_PACK = 1
		BEGIN
			SELECT 	@P1  = Q1,  @P2  = Q2,  @P3  = Q3,  @P4  = Q4,  @P5  = Q5,  @P6  = Q6,  @P7  = Q7,  @P8  = Q8,  @P9  = Q9,  @P10 = Q10, @P11 = Q11, @P12 = Q12, @P13 = Q13, @P14 = Q14, @P15 = Q15, @P16 = Q16, @P17 = Q17, @P18 = Q18, @P19 = Q19, @P20 = Q20, @P21 = Q21, @P22 = Q22, @P23 = Q23, @P24 = Q24,
				@P25 = Q25, @P26 = Q26, @P27 = Q27, @P28 = Q28, @P29 = Q29, @P30 = Q30, @P31 = Q31, @P32 = Q32, @P33 = Q33, @P34 = Q34, @P35 = Q35, @P36 = Q36, @P37 = Q37, @P38 = Q38, @P39 = Q39, @P40 = Q40, @P41 = Q41, @P42 = Q42, @P43 = Q43, @P44 = Q44, @P45 = Q45, @P46 = Q46, @P47 = Q47, @P48 = Q48
				FROM PRODUTOS_PACKS_PERMITIDOS 
				WHERE PRODUTO = @PRODUTO AND PACK = @LETRA_PACK

			/* VERIFICA QTDE DE PACKS DISPONIVEIS */
			SELECT 	@CONTADOR = 1, @QTDE_D = 0, @QTDE_ES = 0, @LOOP = 0,
				@D1  = CASE WHEN @P1  = 0 THEN 0 ELSE @D1  / @P1  END, @D2  = CASE WHEN @P2  = 0 THEN 0 ELSE @D2  / @P2  END, @D3  = CASE WHEN @P3  = 0 THEN 0 ELSE @D3  / @P3  END, @D4  = CASE WHEN @P4  = 0 THEN 0 ELSE @D4  / @P4  END, @D5  = CASE WHEN @P5  = 0 THEN 0 ELSE @D5  / @P5  END, @D6  = CASE WHEN @P6  = 0 THEN 0 ELSE @D6  / @P6  END, @D7  = CASE WHEN @P7  = 0 THEN 0 ELSE @D7  / @P7  END, @D8  = CASE WHEN @P8  = 0 THEN 0 ELSE @D8  / @P8  END, @D9  = CASE WHEN @P9  = 0 THEN 0 ELSE @D9  / @P9  END, @D10 = CASE WHEN @P10 = 0 THEN 0 ELSE @D10 / @P10 END, @D11 = CASE WHEN @P11 = 0 THEN 0 ELSE @D11 / @P11 END, @D12 = CASE WHEN @P12 = 0 THEN 0 ELSE @D12 / @P12 END, @D13 = CASE WHEN @P13 = 0 THEN 0 ELSE @D13 / @P13 END, @D14 = CASE WHEN @P14 = 0 THEN 0 ELSE @D14 / @P14 END, @D15 = CASE WHEN @P15 = 0 THEN 0 ELSE @D15 / @P15 END, @D16 = CASE WHEN @P16 = 0 THEN 0 ELSE @D16 / @P16 END, @D17 = CASE WHEN @P17 = 0 THEN 0 ELSE @D17 / @P17 END, @D18 = CASE WHEN @P18 = 0 THEN 0 ELSE @D18 / @P18 END, @D19 = CASE WHEN @P19 = 0 THEN 0 ELSE @D19 / @P19 END, @D20 = CASE WHEN @P20 = 0 THEN 0 ELSE @D20 / @P20 END, @D21 = CASE WHEN @P21 = 0 THEN 0 ELSE @D21 / @P21 END, @D22 = CASE WHEN @P22 = 0 THEN 0 ELSE @D22 / @P22 END, @D23 = CASE WHEN @P23 = 0 THEN 0 ELSE @D23 / @P23 END, @D24 = CASE WHEN @P24 = 0 THEN 0 ELSE @D24 / @P24 END,
				@D25 = CASE WHEN @P25 = 0 THEN 0 ELSE @D25 / @P25 END, @D26 = CASE WHEN @P26 = 0 THEN 0 ELSE @D26 / @P26 END, @D27 = CASE WHEN @P27 = 0 THEN 0 ELSE @D27 / @P27 END, @D28 = CASE WHEN @P28 = 0 THEN 0 ELSE @D28 / @P28 END, @D29 = CASE WHEN @P29 = 0 THEN 0 ELSE @D29 / @P29 END, @D30 = CASE WHEN @P30 = 0 THEN 0 ELSE @D30 / @P30 END, @D31 = CASE WHEN @P31 = 0 THEN 0 ELSE @D31 / @P31 END, @D32 = CASE WHEN @P32 = 0 THEN 0 ELSE @D32 / @P32 END, @D33 = CASE WHEN @P33 = 0 THEN 0 ELSE @D33 / @P33 END, @D34 = CASE WHEN @P34 = 0 THEN 0 ELSE @D34 / @P34 END, @D35 = CASE WHEN @P35 = 0 THEN 0 ELSE @D35 / @P35 END, @D36 = CASE WHEN @P36 = 0 THEN 0 ELSE @D36 / @P36 END, @D37 = CASE WHEN @P37 = 0 THEN 0 ELSE @D37 / @P37 END, @D38 = CASE WHEN @P38 = 0 THEN 0 ELSE @D38 / @P38 END, @D39 = CASE WHEN @P39 = 0 THEN 0 ELSE @D39 / @P39 END, @D40 = CASE WHEN @P40 = 0 THEN 0 ELSE @D40 / @P40 END, @D41 = CASE WHEN @P41 = 0 THEN 0 ELSE @D41 / @P41 END, @D42 = CASE WHEN @P42 = 0 THEN 0 ELSE @D42 / @P42 END, @D43 = CASE WHEN @P43 = 0 THEN 0 ELSE @D43 / @P43 END, @D44 = CASE WHEN @P44 = 0 THEN 0 ELSE @D44 / @P44 END, @D45 = CASE WHEN @P45 = 0 THEN 0 ELSE @D45 / @P45 END, @D46 = CASE WHEN @P46 = 0 THEN 0 ELSE @D46 / @P46 END, @D47 = CASE WHEN @P47 = 0 THEN 0 ELSE @D47 / @P47 END, @D48 = CASE WHEN @P48 = 0 THEN 0 ELSE @D48 / @P48 END
			
			WHILE @CONTADOR <= @NUMERO_TAMANHOS
			BEGIN
				SELECT @QTDE = CASE @CONTADOR
				WHEN 1  THEN @P1  WHEN 2  THEN @P2  WHEN 3  THEN @P3  WHEN 4  THEN @P4  WHEN 5  THEN @P5  WHEN 6  THEN @P6  WHEN 7  THEN @P7  WHEN 8  THEN @P8  WHEN 9  THEN @P9  WHEN 10 THEN @P10 WHEN 11 THEN @P11 WHEN 12 THEN @P12 WHEN 13 THEN @P13 WHEN 14 THEN @P14 WHEN 15 THEN @P15 WHEN 16 THEN @P16 WHEN 17 THEN @P17 WHEN 18 THEN @P18 WHEN 18 THEN @P19 WHEN 20 THEN @P20 WHEN 21 THEN @P21 WHEN 22 THEN @P22 WHEN 23 THEN @P23 WHEN 24 THEN @P24 
				WHEN 25 THEN @P25 WHEN 26 THEN @P26 WHEN 27 THEN @P27 WHEN 28 THEN @P28 WHEN 29 THEN @P29 WHEN 30 THEN @P30 WHEN 31 THEN @P31 WHEN 32 THEN @P32 WHEN 33 THEN @P33 WHEN 34 THEN @P34 WHEN 35 THEN @P35 WHEN 36 THEN @P36 WHEN 37 THEN @P37 WHEN 38 THEN @P38 WHEN 39 THEN @P39 WHEN 40 THEN @P40 WHEN 41 THEN @P41 WHEN 42 THEN @P42 WHEN 43 THEN @P43 WHEN 44 THEN @P44 WHEN 45 THEN @P45 WHEN 46 THEN @P46 WHEN 47 THEN @P47 WHEN 48 THEN @P48 END

				SELECT @QTDE_ES = CASE @CONTADOR
				WHEN 1  THEN @D1  WHEN 2  THEN @D2  WHEN 3  THEN @D3  WHEN 4  THEN @D4  WHEN 5  THEN @D5  WHEN 6  THEN @D6  WHEN 7  THEN @D7  WHEN 8  THEN @D8  WHEN 9  THEN @D9  WHEN 10 THEN @D10 WHEN 11 THEN @D11 WHEN 12 THEN @D12 WHEN 13 THEN @D13 WHEN 14 THEN @D14 WHEN 15 THEN @D15 WHEN 16 THEN @D16 WHEN 17 THEN @D17 WHEN 18 THEN @D18 WHEN 18 THEN @D19 WHEN 20 THEN @D20 WHEN 21 THEN @D21 WHEN 22 THEN @D22 WHEN 23 THEN @D23 WHEN 24 THEN @D24 
				WHEN 25 THEN @D25 WHEN 26 THEN @D26 WHEN 27 THEN @D27 WHEN 28 THEN @D28 WHEN 29 THEN @D29 WHEN 30 THEN @D30 WHEN 31 THEN @D31 WHEN 32 THEN @D32 WHEN 33 THEN @D33 WHEN 34 THEN @D34 WHEN 35 THEN @D35 WHEN 36 THEN @D36 WHEN 37 THEN @D37 WHEN 38 THEN @D38 WHEN 39 THEN @D39 WHEN 40 THEN @D40 WHEN 41 THEN @D41 WHEN 42 THEN @D42 WHEN 43 THEN @D43 WHEN 44 THEN @D44 WHEN 45 THEN @D45 WHEN 46 THEN @D46 WHEN 47 THEN @D47 WHEN 48 THEN @D48 END
			
				IF (@QTDE_D > @QTDE_ES AND @QTDE_ES > 0) OR (@QTDE_ES = 0 AND @QTDE > 0) OR @CONTADOR = 1 OR @LOOP = 0
					SELECT @QTDE_D = @QTDE_ES
					SELECT @CONTADOR = @CONTADOR + 1, @LOOP = @LOOP + CASE WHEN @QTDE > 0 THEN 1 ELSE 0 END
			END
			SELECT @QTDE_ES = @QTDE_D
			IF @QTDE_ES = 0
			BEGIN
				SELECT @STATUS = 'F'			
				UPDATE ROMANEIOS_PRODUTO SET STATUS = @STATUS, FILTROS_PROCESSO = 'PROCESSO AUTOMÁTICO DE DISTRIBUIÇÃO.'
					WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
				FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
				CONTINUE
			END
		END
		ELSE
			/* GUARDA QTDE ORIGINAL A DISTRIBUIR */
			SELECT  @ES1  = @D1,  @ES2  = @D2,  @ES3  = @D3,  @ES4  = @D4,  @ES5  = @D5,  @ES6  = @D6,  @ES7  = @D7,  @ES8  = @D8,  @ES9  = @D9,  @ES10 = @D10, @ES11 = @D11, @ES12 = @D12, @ES13 = @D13, @ES14 = @D14, @ES15 = @D15, @ES16 = @D16, @ES17 = @D17, @ES18 = @D18, @ES19 = @D19, @ES20 = @D20, @ES21 = @D21, @ES22 = @D22, @ES23 = @D23, @ES24 = @D24,
				@ES25 = @D25, @ES26 = @D26, @ES27 = @D27, @ES28 = @D28, @ES29 = @D29, @ES30 = @D20, @ES31 = @D31, @ES32 = @D32, @ES33 = @D33, @ES34 = @D34, @ES35 = @D35, @ES36 = @D36, @ES37 = @D37, @ES38 = @D38, @ES39 = @D39, @ES40 = @D40, @ES41 = @D41, @ES42 = @D42, @ES43 = @D43, @ES44 = @D44, @ES45 = @D45, @ES46 = @D46, @ES47 = @D47, @ES48 = @D48

		DECLARE CURSOR_ITENS SCROLL CURSOR FOR
			SELECT DISTINCT F.CLIENTE_ATACADO, C.PORCENTAGEM_QTDE, PRIORIDADE, F.TRANSP_REDESPACHO, ISNULL(F.TRANSPORTADORA, @TRANSPORTADORA) AS TRANSPORTADORA_CLIENTE
				FROM ROMANEIOS_PRODUTO A 
					JOIN GIV_DISTRIBUICAO_PORCENTAGEM C ON C.COD_PLANEJAMENTO = @COD_PLANEJAMENTO AND C.COD_AGRUPAMENTO = @COD_AGRUPAMENTO
					JOIN GIV_AGRUPAMENTO_PRODUTO D ON C.COD_AGRUPAMENTO = D.COD_AGRUPAMENTO AND C.ID_AGRUPAMENTO = D.ID_AGRUPAMENTO AND A.PRODUTO = D.PRODUTO
					JOIN GIV_AGRUPAMENTO E ON D.COD_AGRUPAMENTO = E.COD_AGRUPAMENTO AND D.ID_AGRUPAMENTO = E.ID_AGRUPAMENTO AND E.AGRUPAMENTO_DISTRIBUICAO = 1
					JOIN CLIENTES_ATACADO F ON C.COD_CLIFOR = F.COD_CLIENTE
				WHERE A.ROMANEIO = @ROMANEIO AND A.FILIAL = @FILIAL AND A.PRODUTO = @PRODUTO AND A.COR_PRODUTO = @COR_PRODUTO
				AND (@UTILIZAR_GRADE_MINIMA = 1 OR C.PORCENTAGEM_QTDE > 0)
				ORDER BY F.PRIORIDADE , C.PORCENTAGEM_QTDE DESC
		OPEN CURSOR_ITENS
		FETCH NEXT FROM CURSOR_ITENS INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
		/* SE NÃO ENCONTROU CLIENTES / LOJAS */
		IF @@FETCH_STATUS <> 0
		BEGIN
			CLOSE CURSOR_ITENS
			DEALLOCATE CURSOR_ITENS
			SELECT @STATUS = 'D'
			UPDATE ROMANEIOS_PRODUTO SET STATUS = @STATUS, FILTROS_PROCESSO = 'PROCESSO AUTOMÁTICO DE DISTRIBUIÇÃO.'
				WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
			FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
			CONTINUE
		END


		/*AJUSTANDO GRADE MÍNIMA*/
		IF @UTILIZAR_GRADE_MINIMA = 1
		BEGIN
			FETCH LAST FROM CURSOR_ITENS  INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
			SELECT @QTDE_FILIAIS = @@CURSOR_ROWS
			FETCH FIRST  FROM CURSOR_ITENS  INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
	

			IF @TIPO_PACK = 1
			BEGIN
				SELECT @GRADE_MINIMA = 1 --UM PACK INDICA A GRADE MÍNIMA
				SELECT 	@QTDE_ES = CASE WHEN (@QTDE_ES < (@QTDE_FILIAIS*@GRADE_MINIMA)) THEN 0 ELSE (@QTDE_ES - @QTDE_FILIAIS*@GRADE_MINIMA) END
			END
			ELSE
			BEGIN
	
				SELECT 	@ES1 = CASE WHEN (@ES1 < (@QTDE_FILIAIS*@GM1)) THEN 0 ELSE (@ES1 - @QTDE_FILIAIS*@GM1) END, 
				@ES2 = CASE WHEN (@ES2 < (@QTDE_FILIAIS*@GM2)) THEN 0 ELSE (@ES2 - @QTDE_FILIAIS*@GM2) END, 
				@ES3 = CASE WHEN (@ES3 < (@QTDE_FILIAIS*@GM3)) THEN 0 ELSE (@ES3 - @QTDE_FILIAIS*@GM3) END, 
				@ES4 = CASE WHEN (@ES4 < (@QTDE_FILIAIS*@GM4)) THEN 0 ELSE (@ES4 - @QTDE_FILIAIS*@GM4) END, 
				@ES5 = CASE WHEN (@ES5 < (@QTDE_FILIAIS*@GM5)) THEN 0 ELSE (@ES5 - @QTDE_FILIAIS*@GM5) END, 
				@ES6 = CASE WHEN (@ES6 < (@QTDE_FILIAIS*@GM6)) THEN 0 ELSE (@ES6 - @QTDE_FILIAIS*@GM6) END, 
				@ES7 = CASE WHEN (@ES7 < (@QTDE_FILIAIS*@GM7)) THEN 0 ELSE (@ES7 - @QTDE_FILIAIS*@GM7) END, 
				@ES8 = CASE WHEN (@ES8 < (@QTDE_FILIAIS*@GM8)) THEN 0 ELSE (@ES8 - @QTDE_FILIAIS*@GM8) END, 
				@ES9 = CASE WHEN (@ES9 < (@QTDE_FILIAIS*@GM9)) THEN 0 ELSE (@ES9 - @QTDE_FILIAIS*@GM9) END, 
				@ES10 = CASE WHEN (@ES10 < (@QTDE_FILIAIS*@GM10)) THEN 0 ELSE (@ES10 - @QTDE_FILIAIS*@GM10) END, 
				@ES11 = CASE WHEN (@ES11 < (@QTDE_FILIAIS*@GM11)) THEN 0 ELSE (@ES11 - @QTDE_FILIAIS*@GM11) END, 
				@ES12 = CASE WHEN (@ES12 < (@QTDE_FILIAIS*@GM12)) THEN 0 ELSE (@ES12 - @QTDE_FILIAIS*@GM12) END, 
				@ES13 = CASE WHEN (@ES13 < (@QTDE_FILIAIS*@GM13)) THEN 0 ELSE (@ES13 - @QTDE_FILIAIS*@GM13) END, 
				@ES14 = CASE WHEN (@ES14 < (@QTDE_FILIAIS*@GM14)) THEN 0 ELSE (@ES14 - @QTDE_FILIAIS*@GM14) END, 
				@ES15 = CASE WHEN (@ES15 < (@QTDE_FILIAIS*@GM15)) THEN 0 ELSE (@ES15 - @QTDE_FILIAIS*@GM15) END, 
				@ES16 = CASE WHEN (@ES16 < (@QTDE_FILIAIS*@GM16)) THEN 0 ELSE (@ES16 - @QTDE_FILIAIS*@GM16) END, 
				@ES17 = CASE WHEN (@ES17 < (@QTDE_FILIAIS*@GM17)) THEN 0 ELSE (@ES17 - @QTDE_FILIAIS*@GM17) END, 
				@ES18 = CASE WHEN (@ES18 < (@QTDE_FILIAIS*@GM18)) THEN 0 ELSE (@ES18 - @QTDE_FILIAIS*@GM18) END, 
				@ES19 = CASE WHEN (@ES19 < (@QTDE_FILIAIS*@GM19)) THEN 0 ELSE (@ES19 - @QTDE_FILIAIS*@GM19) END, 
				@ES20 = CASE WHEN (@ES20 < (@QTDE_FILIAIS*@GM20)) THEN 0 ELSE (@ES20 - @QTDE_FILIAIS*@GM20) END, 
				@ES21 = CASE WHEN (@ES21 < (@QTDE_FILIAIS*@GM21)) THEN 0 ELSE (@ES21 - @QTDE_FILIAIS*@GM21) END, 
				@ES22 = CASE WHEN (@ES22 < (@QTDE_FILIAIS*@GM22)) THEN 0 ELSE (@ES22 - @QTDE_FILIAIS*@GM22) END, 
				@ES23 = CASE WHEN (@ES23 < (@QTDE_FILIAIS*@GM23)) THEN 0 ELSE (@ES23 - @QTDE_FILIAIS*@GM23) END, 
				@ES24 = CASE WHEN (@ES24 < (@QTDE_FILIAIS*@GM24)) THEN 0 ELSE (@ES24 - @QTDE_FILIAIS*@GM24) END, 
				@ES25 = CASE WHEN (@ES25 < (@QTDE_FILIAIS*@GM25)) THEN 0 ELSE (@ES25 - @QTDE_FILIAIS*@GM25) END, 
				@ES26 = CASE WHEN (@ES26 < (@QTDE_FILIAIS*@GM26)) THEN 0 ELSE (@ES26 - @QTDE_FILIAIS*@GM26) END, 
				@ES27 = CASE WHEN (@ES27 < (@QTDE_FILIAIS*@GM27)) THEN 0 ELSE (@ES27 - @QTDE_FILIAIS*@GM27) END, 
				@ES28 = CASE WHEN (@ES28 < (@QTDE_FILIAIS*@GM28)) THEN 0 ELSE (@ES28 - @QTDE_FILIAIS*@GM28) END, 
				@ES29 = CASE WHEN (@ES29 < (@QTDE_FILIAIS*@GM29)) THEN 0 ELSE (@ES29 - @QTDE_FILIAIS*@GM29) END, 
				@ES30 = CASE WHEN (@ES30 < (@QTDE_FILIAIS*@GM30)) THEN 0 ELSE (@ES30 - @QTDE_FILIAIS*@GM30) END, 
				@ES31 = CASE WHEN (@ES31 < (@QTDE_FILIAIS*@GM31)) THEN 0 ELSE (@ES31 - @QTDE_FILIAIS*@GM31) END, 
				@ES32 = CASE WHEN (@ES32 < (@QTDE_FILIAIS*@GM32)) THEN 0 ELSE (@ES32 - @QTDE_FILIAIS*@GM32) END, 
				@ES33 = CASE WHEN (@ES33 < (@QTDE_FILIAIS*@GM33)) THEN 0 ELSE (@ES33 - @QTDE_FILIAIS*@GM33) END, 
				@ES34 = CASE WHEN (@ES34 < (@QTDE_FILIAIS*@GM34)) THEN 0 ELSE (@ES34 - @QTDE_FILIAIS*@GM34) END, 
				@ES35 = CASE WHEN (@ES35 < (@QTDE_FILIAIS*@GM35)) THEN 0 ELSE (@ES35 - @QTDE_FILIAIS*@GM35) END, 
				@ES36 = CASE WHEN (@ES36 < (@QTDE_FILIAIS*@GM36)) THEN 0 ELSE (@ES36 - @QTDE_FILIAIS*@GM36) END, 
				@ES37 = CASE WHEN (@ES37 < (@QTDE_FILIAIS*@GM37)) THEN 0 ELSE (@ES37 - @QTDE_FILIAIS*@GM37) END, 
				@ES38 = CASE WHEN (@ES38 < (@QTDE_FILIAIS*@GM38)) THEN 0 ELSE (@ES38 - @QTDE_FILIAIS*@GM38) END, 
				@ES39 = CASE WHEN (@ES39 < (@QTDE_FILIAIS*@GM39)) THEN 0 ELSE (@ES39 - @QTDE_FILIAIS*@GM39) END, 
				@ES40 = CASE WHEN (@ES40 < (@QTDE_FILIAIS*@GM40)) THEN 0 ELSE (@ES40 - @QTDE_FILIAIS*@GM40) END, 
				@ES41 = CASE WHEN (@ES41 < (@QTDE_FILIAIS*@GM41)) THEN 0 ELSE (@ES41 - @QTDE_FILIAIS*@GM41) END, 
				@ES42 = CASE WHEN (@ES42 < (@QTDE_FILIAIS*@GM42)) THEN 0 ELSE (@ES42 - @QTDE_FILIAIS*@GM42) END, 
				@ES43 = CASE WHEN (@ES43 < (@QTDE_FILIAIS*@GM43)) THEN 0 ELSE (@ES43 - @QTDE_FILIAIS*@GM43) END, 
				@ES44 = CASE WHEN (@ES44 < (@QTDE_FILIAIS*@GM44)) THEN 0 ELSE (@ES44 - @QTDE_FILIAIS*@GM44) END, 
				@ES45 = CASE WHEN (@ES45 < (@QTDE_FILIAIS*@GM45)) THEN 0 ELSE (@ES45 - @QTDE_FILIAIS*@GM45) END, 
				@ES46 = CASE WHEN (@ES46 < (@QTDE_FILIAIS*@GM46)) THEN 0 ELSE (@ES46 - @QTDE_FILIAIS*@GM46) END, 
				@ES47 = CASE WHEN (@ES47 < (@QTDE_FILIAIS*@GM47)) THEN 0 ELSE (@ES47 - @QTDE_FILIAIS*@GM47) END, 
				@ES48 = CASE WHEN (@ES48 < (@QTDE_FILIAIS*@GM48)) THEN 0 ELSE (@ES48 - @QTDE_FILIAIS*@GM48) END
		
				SELECT @QTDE_ES = @ES1+ @ES2+ @ES3+ @ES4+ @ES5+ @ES6+ @ES7+ @ES8+ @ES9+ @ES10+ @ES11+ @ES12+ @ES13+ 
				@ES14+ @ES15+ @ES16+ @ES17+ @ES18+ @ES19+ @ES20+ @ES21+ @ES22+ @ES23+ @ES24+ @ES25+ @ES26+ @ES27+ 
				@ES28+ @ES29+ @ES30+ @ES31+ @ES32+ @ES33+ @ES34+ @ES35+ @ES36+ @ES37+ @ES38+ @ES39+ @ES40+ @ES41+ 
				@ES42+ @ES43+ @ES44+ @ES45+ @ES46+ @ES47+ @ES48

			END
		END
		/*------------*/


		WHILE @@FETCH_STATUS = 0
		BEGIN
			IF @TIPO_PACK = 1
			BEGIN
				SELECT @QTDE_P = ROUND((@QTDE_ES * @PORCENTAGEM_QTDE) / 100, 0)
				--AJUSTANDO GRADE MÍNIMA
				IF @UTILIZAR_GRADE_MINIMA = 1
					SELECT  @QTDE_P = @QTDE_P + @GRADE_MINIMA
				SELECT @QTDE_P = CASE WHEN @QTDE_P > @QTDE_D THEN @QTDE_D ELSE @QTDE_P END
				SELECT 	@Q1  = @QTDE_P * @P1,  @Q2  = @QTDE_P * @P2,  @Q3  = @QTDE_P * @P3,  @Q4  = @QTDE_P * @P4,  @Q5  = @QTDE_P * @P5,  @Q6  = @QTDE_P * @P6,  @Q7  = @QTDE_P * @P7,  @Q8  = @QTDE_P * @P8,  @Q9  = @QTDE_P * @P9,  @Q10 = @QTDE_P * @P10, @Q11 = @QTDE_P * @P11, @Q12 = @QTDE_P * @P12, @Q13 = @QTDE_P * @P13, @Q14 = @QTDE_P * @P14, @Q15 = @QTDE_P * @P15, @Q16 = @QTDE_P * @P16, @Q17 = @QTDE_P * @P17, @Q18 = @QTDE_P * @P18, @Q19 = @QTDE_P * @P19, @Q20 = @QTDE_P * @P20, @Q21 = @QTDE_P * @P21, @Q22 = @QTDE_P * @P22, @Q23 = @QTDE_P * @P23, @Q24 = @QTDE_P * @P24,
					@Q25 = @QTDE_P * @P25, @Q26 = @QTDE_P * @P26, @Q27 = @QTDE_P * @P27, @Q28 = @QTDE_P * @P28, @Q29 = @QTDE_P * @P29, @Q30 = @QTDE_P * @P30, @Q31 = @QTDE_P * @P31, @Q32 = @QTDE_P * @P32, @Q33 = @QTDE_P * @P33, @Q34 = @QTDE_P * @P34, @Q35 = @QTDE_P * @P35, @Q36 = @QTDE_P * @P36, @Q37 = @QTDE_P * @P37, @Q38 = @QTDE_P * @P38, @Q39 = @QTDE_P * @P39, @Q40 = @QTDE_P * @P40, @Q41 = @QTDE_P * @P41, @Q42 = @QTDE_P * @P42, @Q43 = @QTDE_P * @P43, @Q44 = @QTDE_P * @P44, @Q45 = @QTDE_P * @P45, @Q46 = @QTDE_P * @P46, @Q47 = @QTDE_P * @P47, @Q48 = @QTDE_P * @P48
			END
			ELSE
			BEGIN

				IF @UTILIZAR_GRADE_MINIMA = 1
					-- Quando utilizar grade mínima não permitir arredondamento, para que a grade mínima possa ser respeitada.
					SELECT @Q1  = CONVERT(INT, (@ES1  * @PORCENTAGEM_QTDE) / 100, 0), @Q2  = CONVERT(INT, (@ES2  * @PORCENTAGEM_QTDE) / 100, 0), @Q3  = CONVERT(INT, (@ES3  * @PORCENTAGEM_QTDE) / 100, 0), @Q4  = CONVERT(INT, (@ES4  * @PORCENTAGEM_QTDE) / 100, 0), @Q5  = CONVERT(INT, (@ES5  * @PORCENTAGEM_QTDE) / 100, 0), @Q6  = CONVERT(INT, (@ES6  * @PORCENTAGEM_QTDE) / 100, 0), @Q7  = CONVERT(INT, (@ES7  * @PORCENTAGEM_QTDE) / 100, 0), @Q8  = CONVERT(INT, (@ES8  * @PORCENTAGEM_QTDE) / 100, 0), @Q9  = CONVERT(INT, (@ES9  * @PORCENTAGEM_QTDE) / 100, 0), @Q10  = CONVERT(INT, (@ES10  * @PORCENTAGEM_QTDE) / 100, 0), 
						@Q11  = CONVERT(INT, (@ES11  * @PORCENTAGEM_QTDE) / 100, 0), @Q12  = CONVERT(INT, (@ES12  * @PORCENTAGEM_QTDE) / 100, 0), @Q13  = CONVERT(INT, (@ES13  * @PORCENTAGEM_QTDE) / 100, 0), @Q14  = CONVERT(INT, (@ES14  * @PORCENTAGEM_QTDE) / 100, 0), @Q15  = CONVERT(INT, (@ES15  * @PORCENTAGEM_QTDE) / 100, 0), @Q16  = CONVERT(INT, (@ES16  * @PORCENTAGEM_QTDE) / 100, 0), @Q17  = CONVERT(INT, (@ES17  * @PORCENTAGEM_QTDE) / 100, 0), @Q18  = CONVERT(INT, (@ES18  * @PORCENTAGEM_QTDE) / 100, 0), @Q19  = CONVERT(INT, (@ES19  * @PORCENTAGEM_QTDE) / 100, 0), 
						@Q20  = CONVERT(INT, (@ES20  * @PORCENTAGEM_QTDE) / 100, 0), @Q21  = CONVERT(INT, (@ES21  * @PORCENTAGEM_QTDE) / 100, 0), @Q22  = CONVERT(INT, (@ES22  * @PORCENTAGEM_QTDE) / 100, 0), @Q23  = CONVERT(INT, (@ES23  * @PORCENTAGEM_QTDE) / 100, 0), @Q24  = CONVERT(INT, (@ES24  * @PORCENTAGEM_QTDE) / 100, 0), @Q25  = CONVERT(INT, (@ES25  * @PORCENTAGEM_QTDE) / 100, 0), @Q26  = CONVERT(INT, (@ES26  * @PORCENTAGEM_QTDE) / 100, 0), @Q27  = CONVERT(INT, (@ES27  * @PORCENTAGEM_QTDE) / 100, 0), @Q28  = CONVERT(INT, (@ES28  * @PORCENTAGEM_QTDE) / 100, 0), 
						@Q29  = CONVERT(INT, (@ES29  * @PORCENTAGEM_QTDE) / 100, 0), @Q30  = CONVERT(INT, (@ES30  * @PORCENTAGEM_QTDE) / 100, 0), @Q31  = CONVERT(INT, (@ES31  * @PORCENTAGEM_QTDE) / 100, 0), @Q32  = CONVERT(INT, (@ES32  * @PORCENTAGEM_QTDE) / 100, 0), @Q33  = CONVERT(INT, (@ES33  * @PORCENTAGEM_QTDE) / 100, 0), @Q34  = CONVERT(INT, (@ES34  * @PORCENTAGEM_QTDE) / 100, 0), @Q35  = CONVERT(INT, (@ES35  * @PORCENTAGEM_QTDE) / 100, 0), @Q36  = CONVERT(INT, (@ES36  * @PORCENTAGEM_QTDE) / 100, 0), @Q37  = CONVERT(INT, (@ES37  * @PORCENTAGEM_QTDE) / 100, 0), 
						@Q38  = CONVERT(INT, (@ES38  * @PORCENTAGEM_QTDE) / 100, 0), @Q39  = CONVERT(INT, (@ES39  * @PORCENTAGEM_QTDE) / 100, 0), @Q40  = CONVERT(INT, (@ES40  * @PORCENTAGEM_QTDE) / 100, 0), @Q41  = CONVERT(INT, (@ES41  * @PORCENTAGEM_QTDE) / 100, 0), @Q42  = CONVERT(INT, (@ES42  * @PORCENTAGEM_QTDE) / 100, 0), @Q43  = CONVERT(INT, (@ES43  * @PORCENTAGEM_QTDE) / 100, 0), @Q44  = CONVERT(INT, (@ES44  * @PORCENTAGEM_QTDE) / 100, 0), @Q45  = CONVERT(INT, (@ES45  * @PORCENTAGEM_QTDE) / 100, 0), @Q46  = CONVERT(INT, (@ES46  * @PORCENTAGEM_QTDE) / 100, 0), @Q47  = CONVERT(INT, (@ES47  * @PORCENTAGEM_QTDE) / 100, 0), @Q48  = CONVERT(INT, (@ES48  * @PORCENTAGEM_QTDE) / 100, 0)
				ELSE 	
					SELECT	@Q1  = ROUND((@ES1  * @PORCENTAGEM_QTDE) / 100, 0), @Q2  = ROUND((@ES2  * @PORCENTAGEM_QTDE) / 100, 0), @Q3  = ROUND((@ES3  * @PORCENTAGEM_QTDE) / 100, 0), @Q4  = ROUND((@ES4  * @PORCENTAGEM_QTDE) / 100, 0), @Q5  = ROUND((@ES5  * @PORCENTAGEM_QTDE) / 100, 0), @Q6  = ROUND((@ES6  * @PORCENTAGEM_QTDE) / 100, 0), @Q7  = ROUND((@ES7  * @PORCENTAGEM_QTDE) / 100, 0), @Q8  = ROUND((@ES8  * @PORCENTAGEM_QTDE) / 100, 0), @Q9  = ROUND((@ES9  * @PORCENTAGEM_QTDE) / 100, 0), @Q10 = ROUND((@ES10 * @PORCENTAGEM_QTDE) / 100, 0), @Q11 = ROUND((@ES11 * @PORCENTAGEM_QTDE) / 100, 0), @Q12 = ROUND((@ES12 * @PORCENTAGEM_QTDE) / 100, 0),
						@Q13 = ROUND((@ES13 * @PORCENTAGEM_QTDE) / 100, 0), @Q14 = ROUND((@ES14 * @PORCENTAGEM_QTDE) / 100, 0), @Q15 = ROUND((@ES15 * @PORCENTAGEM_QTDE) / 100, 0), @Q16 = ROUND((@ES16 * @PORCENTAGEM_QTDE) / 100, 0), @Q17 = ROUND((@ES17 * @PORCENTAGEM_QTDE) / 100, 0), @Q18 = ROUND((@ES18 * @PORCENTAGEM_QTDE) / 100, 0), @Q19 = ROUND((@ES19 * @PORCENTAGEM_QTDE) / 100, 0), @Q20 = ROUND((@ES20 * @PORCENTAGEM_QTDE) / 100, 0), @Q21 = ROUND((@ES21 * @PORCENTAGEM_QTDE) / 100, 0), @Q22 = ROUND((@ES22 * @PORCENTAGEM_QTDE) / 100, 0), @Q23 = ROUND((@ES23 * @PORCENTAGEM_QTDE) / 100, 0), @Q24 = ROUND((@ES24 * @PORCENTAGEM_QTDE) / 100, 0),
						@Q25 = ROUND((@ES25 * @PORCENTAGEM_QTDE) / 100, 0), @Q26 = ROUND((@ES26 * @PORCENTAGEM_QTDE) / 100, 0), @Q27 = ROUND((@ES27 * @PORCENTAGEM_QTDE) / 100, 0), @Q28 = ROUND((@ES28 * @PORCENTAGEM_QTDE) / 100, 0), @Q29 = ROUND((@ES29 * @PORCENTAGEM_QTDE) / 100, 0), @Q30 = ROUND((@ES30 * @PORCENTAGEM_QTDE) / 100, 0), @Q31 = ROUND((@ES31 * @PORCENTAGEM_QTDE) / 100, 0), @Q32 = ROUND((@ES32 * @PORCENTAGEM_QTDE) / 100, 0), @Q33 = ROUND((@ES33 * @PORCENTAGEM_QTDE) / 100, 0), @Q34 = ROUND((@ES34 * @PORCENTAGEM_QTDE) / 100, 0), @Q35 = ROUND((@ES35 * @PORCENTAGEM_QTDE) / 100, 0), @Q36 = ROUND((@ES36 * @PORCENTAGEM_QTDE) / 100, 0),
						@Q37 = ROUND((@ES37 * @PORCENTAGEM_QTDE) / 100, 0), @Q38 = ROUND((@ES38 * @PORCENTAGEM_QTDE) / 100, 0), @Q39 = ROUND((@ES39 * @PORCENTAGEM_QTDE) / 100, 0), @Q40 = ROUND((@ES40 * @PORCENTAGEM_QTDE) / 100, 0), @Q41 = ROUND((@ES41 * @PORCENTAGEM_QTDE) / 100, 0), @Q42 = ROUND((@ES42 * @PORCENTAGEM_QTDE) / 100, 0), @Q43 = ROUND((@ES43 * @PORCENTAGEM_QTDE) / 100, 0), @Q44 = ROUND((@ES44 * @PORCENTAGEM_QTDE) / 100, 0), @Q45 = ROUND((@ES45 * @PORCENTAGEM_QTDE) / 100, 0), @Q46 = ROUND((@ES46 * @PORCENTAGEM_QTDE) / 100, 0), @Q47 = ROUND((@ES47 * @PORCENTAGEM_QTDE) / 100, 0), @Q48 = ROUND((@ES48 * @PORCENTAGEM_QTDE) / 100, 0)

				--AJUSTANDO GRADE MÍNIMA
				IF @UTILIZAR_GRADE_MINIMA = 1
					SELECT 	@Q1 = (@Q1 + @GM1),@Q2 = (@Q2 + @GM2),@Q3 = (@Q3 + @GM3),@Q4 = (@Q4 + @GM4),
						@Q5 = (@Q5 + @GM5),@Q6 = (@Q6 + @GM6),@Q7 = (@Q7 + @GM7),@Q8 = (@Q8 + @GM8),
						@Q9 = (@Q9 + @GM9),@Q10 = (@Q10 + @GM10),@Q11 = (@Q11 + @GM11),@Q12 = (@Q12 + @GM12),
						@Q13 = (@Q13 + @GM13),@Q14 = (@Q14 + @GM14),@Q15 = (@Q15 + @GM15),@Q16 = (@Q16 + @GM16),
						@Q17 = (@Q17 + @GM17),@Q18 = (@Q18 + @GM18),@Q19 = (@Q19 + @GM19),@Q20 = (@Q20 + @GM20),
						@Q21 = (@Q21 + @GM21),@Q22 = (@Q22 + @GM22),@Q23 = (@Q23 + @GM23),@Q24 = (@Q24 + @GM24),
						@Q25 = (@Q25 + @GM25),@Q26 = (@Q26 + @GM26),@Q27 = (@Q27 + @GM27),@Q28 = (@Q28 + @GM28),
						@Q29 = (@Q29 + @GM29),@Q30 = (@Q30 + @GM30),@Q31 = (@Q31 + @GM31),@Q32 = (@Q32 + @GM32),
						@Q33 = (@Q33 + @GM33),@Q34 = (@Q34 + @GM34),@Q35 = (@Q35 + @GM35),@Q36 = (@Q36 + @GM36),
						@Q37 = (@Q37 + @GM37),@Q38 = (@Q38 + @GM38),@Q39 = (@Q39 + @GM39),@Q40 = (@Q40 + @GM40),
						@Q41 = (@Q41 + @GM41),@Q42 = (@Q42 + @GM42),@Q43 = (@Q43 + @GM43),@Q44 = (@Q44 + @GM44),
						@Q45 = (@Q45 + @GM45),@Q46 = (@Q46 + @GM46),@Q47 = (@Q47 + @GM47),@Q48 = (@Q48 + @GM48)

				SELECT 	@Q1  = CASE WHEN @D1  > @Q1  THEN @Q1  ELSE @D1  END, @Q2  = CASE WHEN @D2  > @Q2  THEN @Q2  ELSE @D2  END, @Q3  = CASE WHEN @D3  > @Q3  THEN @Q3  ELSE @D3  END, @Q4  = CASE WHEN @D4  > @Q4  THEN @Q4  ELSE @D4  END,
					@Q5  = CASE WHEN @D5  > @Q5  THEN @Q5  ELSE @D5  END, @Q6  = CASE WHEN @D6  > @Q6  THEN @Q6  ELSE @D6  END, @Q7  = CASE WHEN @D7  > @Q7  THEN @Q7  ELSE @D7  END, @Q8  = CASE WHEN @D8  > @Q8  THEN @Q8  ELSE @D8  END,
					@Q9  = CASE WHEN @D9  > @Q9  THEN @Q9  ELSE @D9  END, @Q10 = CASE WHEN @D10 > @Q10 THEN @Q10 ELSE @D10 END, @Q11 = CASE WHEN @D11 > @Q11 THEN @Q11 ELSE @D11 END, @Q12 = CASE WHEN @D12 > @Q12 THEN @Q12 ELSE @D12 END,
					@Q13 = CASE WHEN @D13 > @Q13 THEN @Q13 ELSE @D13 END, @Q14 = CASE WHEN @D14 > @Q14 THEN @Q14 ELSE @D14 END, @Q15 = CASE WHEN @D15 > @Q15 THEN @Q15 ELSE @D15 END, @Q16 = CASE WHEN @D16 > @Q16 THEN @Q16 ELSE @D16 END,
					@Q17 = CASE WHEN @D17 > @Q17 THEN @Q17 ELSE @D17 END, @Q18 = CASE WHEN @D18 > @Q18 THEN @Q18 ELSE @D18 END, @Q19 = CASE WHEN @D19 > @Q19 THEN @Q19 ELSE @D19 END, @Q20 = CASE WHEN @D20 > @Q20 THEN @Q20 ELSE @D20 END,
					@Q21 = CASE WHEN @D21 > @Q21 THEN @Q21 ELSE @D21 END, @Q22 = CASE WHEN @D22 > @Q22 THEN @Q22 ELSE @D22 END, @Q23 = CASE WHEN @D23 > @Q23 THEN @Q23 ELSE @D23 END, @Q24 = CASE WHEN @D24 > @Q24 THEN @Q24 ELSE @D24 END,
					@Q25 = CASE WHEN @D25 > @Q25 THEN @Q25 ELSE @D25 END, @Q26 = CASE WHEN @D26 > @Q26 THEN @Q26 ELSE @D26 END, @Q27 = CASE WHEN @D27 > @Q27 THEN @Q27 ELSE @D27 END, @Q28 = CASE WHEN @D28 > @Q28 THEN @Q28 ELSE @D28 END,
					@Q29 = CASE WHEN @D29 > @Q29 THEN @Q29 ELSE @D29 END, @Q30 = CASE WHEN @D30 > @Q30 THEN @Q30 ELSE @D30 END, @Q31 = CASE WHEN @D31 > @Q31 THEN @Q31 ELSE @D31 END, @Q32 = CASE WHEN @D32 > @Q32 THEN @Q32 ELSE @D32 END,
					@Q33 = CASE WHEN @D33 > @Q33 THEN @Q33 ELSE @D33 END, @Q34 = CASE WHEN @D34 > @Q34 THEN @Q34 ELSE @D34 END, @Q35 = CASE WHEN @D35 > @Q35 THEN @Q35 ELSE @D35 END, @Q36 = CASE WHEN @D36 > @Q36 THEN @Q36 ELSE @D36 END,
					@Q37 = CASE WHEN @D37 > @Q37 THEN @Q37 ELSE @D37 END, @Q38 = CASE WHEN @D38 > @Q38 THEN @Q38 ELSE @D38 END, @Q39 = CASE WHEN @D39 > @Q39 THEN @Q39 ELSE @D39 END, @Q40 = CASE WHEN @D40 > @Q40 THEN @Q40 ELSE @D40 END,
					@Q41 = CASE WHEN @D41 > @Q41 THEN @Q41 ELSE @D41 END, @Q42 = CASE WHEN @D42 > @Q42 THEN @Q42 ELSE @D42 END, @Q43 = CASE WHEN @D43 > @Q43 THEN @Q43 ELSE @D43 END, @Q44 = CASE WHEN @D44 > @Q44 THEN @Q44 ELSE @D44 END,
					@Q45 = CASE WHEN @D45 > @Q45 THEN @Q45 ELSE @D45 END, @Q46 = CASE WHEN @D46 > @Q46 THEN @Q46 ELSE @D46 END, @Q47 = CASE WHEN @D47 > @Q47 THEN @Q47 ELSE @D47 END, @Q48 = CASE WHEN @D48 > @Q48 THEN @Q48 ELSE @D48 END
			END



			/* SE NÃO POSSUI QTDE E NÃO MANTEM ITEM ZERADO*/
--AQUI
			IF @MANTER_ITEM_ZERADO = 0 AND (@Q1 + @Q2 + @Q3 + @Q4 + @Q5 + @Q6 + @Q7 + @Q8 + @Q9 + @Q10 + @Q11 + @Q12 + @Q13 + @Q14 + @Q15 + @Q16 + @Q17 + @Q18 + @Q19 + @Q20 + @Q21 + @Q22 + @Q23 + @Q24 +  @Q25 + @Q26 + @Q27 + @Q28 + @Q29 + @Q30 + @Q31 + @Q32 + @Q33 + @Q34 + @Q35 + @Q36 + @Q37 + @Q38 + @Q39 + @Q40 + @Q41 + @Q42 + @Q43 + @Q44 + @Q45 + @Q46 + @Q47 + @Q48) = 0
			BEGIN
				FETCH NEXT FROM CURSOR_ITENS INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
				CONTINUE
			END				

			/* PEDIDO DE VENDA */
			SELECT @PEDIDO_VENDA = NULL, @CODIGO_TAB_PRECO = @TAB_PRECO, @PRECO1 = 0, @PRECO2 = 0, @PRECO3 = 0, @PRECO4 = 0, @DESCONTO_ITEM_VENDA = 0

			/* TABELA DE PRECO */
			IF @TAB_PRECO_CLIENTE = 1
			BEGIN
				SELECT @CODIGO_TAB_PRECO = CODIGO_TAB_PRECO 
					FROM CLIENTES_ATACADO 
					WHERE CLIENTE_ATACADO = @CLIENTE_ATACADO
				IF ISNULL(@CODIGO_TAB_PRECO, '') = ''
					SET @CODIGO_TAB_PRECO = @TAB_PRECO
			END

			/* VERIFICA SE UTILIZA CONDIÇÃO DE PAGAMENTO DO CLIENTE OU DO PARAMETRO P/ DISTRIBUICAO */
			IF @COND_PGTO_CLIENTE = 1
			BEGIN
				SELECT @COND_PARAM = @COND_PGTO		
				SELECT @COND_PGTO = CONDICAO_PGTO 
					FROM CLIENTES_ATACADO 
					WHERE CLIENTE_ATACADO = @CLIENTE_ATACADO
				IF ISNULL(@COND_PGTO, '') = ''
					SELECT @COND_PGTO = @COND_PARAM
				ELSE
					SELECT 	@DESCONTO_COND_PGTO = CASE WHEN DESCONTO_FATURAMENTO = 0 THEN ISNULL(DESCONTO, 0) ELSE 0 END,
						@ENCARGO = CASE WHEN ENCARGO_FATURAMENTO = 0 THEN ISNULL(ENCARGO, 0) ELSE 0 END,
						@DESCONTO_ITEM = CASE WHEN DESCONTO_ITEM_FATURAMENTO = 0 THEN ISNULL(DESCONTO_ITEM, 0) ELSE 0 END,
						@INCIDE_SOBRE_PRECO = ISNULL(INCIDE_SOBRE_PRECO, 0)
						FROM COND_ATAC_PGTOS WHERE CONDICAO_PGTO = @COND_PGTO

			END
			-------
				
			SELECT @PEDIDO_VENDA = PEDIDO 
				FROM VENDAS
				WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND CLIENTE_ATACADO = @CLIENTE_ATACADO

			IF @PEDIDO_VENDA IS NULL OR @@ROWCOUNT = 0
			BEGIN
				/* INCLUI NOVO PEDIDO */
				EXEC LX_SEQUENCIAL 'VENDAS.PEDIDO', NULL, @PEDIDO_VENDA OUTPUT
						
				INSERT INTO VENDAS
					(PEDIDO, ROMANEIO, COLECAO, CODIGO_TAB_PRECO, TIPO, CONDICAO_PGTO, FILIAL, CLIENTE_ATACADO, NOME_CLIFOR_ENTREGA, TRANSPORTADORA, MOEDA, REPRESENTANTE, GERENTE, COMISSAO, COMISSAO_GERENTE, PORCENTAGEM_ACERTO, EMISSAO, CADASTRAMENTO, TOT_QTDE_ORIGINAL, TOT_QTDE_ENTREGAR, TOT_VALOR_ORIGINAL, TOT_VALOR_ENTREGAR, DESCONTO, ENCARGO, DESCONTO_COND_PGTO, VALOR_IPI, TABELA_FILHA, OBS, APROVACAO, DESCONTO_SOBRE_1, DESCONTO_SOBRE_2, DESCONTO_SOBRE_3, DESCONTO_SOBRE_4, PORC_DESCONTO_DIGITADO, PORC_DESCONTO, PORC_DESCONTO_COND_PGTO, PORC_ENCARGO, ACEITA_PECAS_PEQUENAS, ACEITA_PECAS_COM_CORTE, INDICADOR_VENDA, FILIAL_DIGITACAO, TIPO_CAIXA, TIPO_FRETE, ENTREGA_CIF, TRANSP_REDESPACHO)
				VALUES  (@PEDIDO_VENDA, @ROMANEIO, @COLECAO, @CODIGO_TAB_PRECO, @TIPO_VENDA, @COND_PGTO, @FILIAL, @CLIENTE_ATACADO, @CLIENTE_ATACADO, CASE WHEN @UITILIZA_TRANSP_CLIENTE=1 THEN @TRANSPORTADORA_CLIENTE ELSE @TRANSPORTADORA END, @MOEDA, @REPRESENTANTE, @GERENTE, @COMISSAO, @COMISSAO_GERENTE, @PORCENTAGEM_ACERTO, CONVERT(VARCHAR(8), GETDATE(), 112), CONVERT(VARCHAR(8), GETDATE(), 112), 0, 0, 0,0,0,0,0,0, 'VENDAS_PRODUTO', 'PEDIDO GERADO PELO PROCESSO DE DISTRIBUIÇÃO. ROMANEIO NO. ' + @ROMANEIO, 'E', 0,0,0,0, 1, 0, @DESCONTO_COND_PGTO, @ENCARGO, 100, 100, 'D', @FILIAL, @TIPO_CAIXA, @TIPO_FRETE, @ENTREGA_CIF, CASE WHEN @UITILIZA_TRANSP_CLIENTE=1 THEN @TRANSP_REDESPACHO ELSE @TRANSPORTADORA END)
				IF @@ROWCOUNT = 0
				BEGIN
					SELECT @ERRNO = 30002, @ERRMSG = 'PROBLEMA NO INSERT EM VENDAS !'
					GOTO ERROR
				END				
			END
			ELSE
			BEGIN
				IF EXISTS(SELECT * FROM VENDAS WHERE PEDIDO = @PEDIDO_VENDA AND (PORC_DESCONTO_COND_PGTO <> @DESCONTO_COND_PGTO OR PORC_ENCARGO <> @ENCARGO OR CONDICAO_PGTO <> @COND_PGTO OR CODIGO_TAB_PRECO <> @CODIGO_TAB_PRECO))
				BEGIN
					UPDATE VENDAS SET PORC_DESCONTO_COND_PGTO = @DESCONTO_COND_PGTO, PORC_ENCARGO = @ENCARGO, CONDICAO_PGTO = @COND_PGTO, CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO
						WHERE PEDIDO = @PEDIDO_VENDA

					IF @@ROWCOUNT = 0
					BEGIN
						SELECT @ERRNO = 30002, @ERRMSG = 'PROBLEMA NO UPDATE EM VENDAS !'
						GOTO ERROR
					END
				END
			END

			/* PREÇO */
			IF @VARIA_PRECO_COR = 1
				SELECT @PRECO1 = PRECO1, @PRECO2 = PRECO2, @PRECO3 = PRECO3, @PRECO4 = PRECO4
					FROM PRODUTOS_PRECO_COR
					WHERE CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
			ELSE
				SELECT @PRECO1 = PRECO1, @PRECO2 = PRECO2, @PRECO3 = PRECO3, @PRECO4 = PRECO4
					FROM PRODUTOS_PRECOS
					WHERE CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO AND PRODUTO = @PRODUTO

			/* SE POSSUI DESCONTO/ENCARGO NO ITEM */
			IF @DESCONTO_ITEM <> 0
			BEGIN
				IF @INCIDE_SOBRE_PRECO = 1
					SELECT 	@PRECO1 = (@PRECO1 - ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)),
						@PRECO2 = (@PRECO2 - ROUND(@PRECO2 * (@DESCONTO_ITEM / 100), 2)),
						@PRECO3 = (@PRECO3 - ROUND(@PRECO3 * (@DESCONTO_ITEM / 100), 2)),
						@PRECO4 = (@PRECO4 - ROUND(@PRECO4 * (@DESCONTO_ITEM / 100), 2))
				ELSE
				BEGIN
					IF @VARIA_PRECO_TAM = 0
						SELECT @DESCONTO_ITEM_VENDA = ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)
					ELSE
					BEGIN
						SELECT 	@CONTADOR = 0
						SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO1 > 0 THEN (@PRECO1 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
							@CONTADOR = @CONTADOR + CASE WHEN @PRECO1 > 0 THEN 1 ELSE 0 END
						SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO2 > 0 THEN (@PRECO2 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
							@CONTADOR = @CONTADOR + CASE WHEN @PRECO2 > 0 THEN 1 ELSE 0 END
						SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO3 > 0 THEN (@PRECO3 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
							@CONTADOR = @CONTADOR + CASE WHEN @PRECO3 > 0 THEN 1 ELSE 0 END
						SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO4 > 0 THEN (@PRECO4 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
							@CONTADOR = @CONTADOR + CASE WHEN @PRECO4 > 0 THEN 1 ELSE 0 END
						SELECT @DESCONTO_ITEM_VENDA = ROUND(@DESCONTO_ITEM_VENDA / CASE WHEN @CONTADOR = 0 THEN 1 ELSE @CONTADOR END, 2)
					END
				END
			END
			/* CALCULA TOTAL DO ITEM */
			SELECT 	@QTDE_R = (@Q1 + @Q2 + @Q3 + @Q4 + @Q5 + @Q6 + @Q7 + @Q8 + @Q9 + @Q10 + @Q11 + @Q12 + @Q13 + @Q14 + @Q15 + @Q16 + @Q17 + @Q18 + @Q19 + @Q20 + @Q21 + @Q22 + @Q23 + @Q24 +  @Q25 + @Q26 + @Q27 + @Q28 + @Q29 + @Q30 + @Q31 + @Q32 + @Q33 + @Q34 + @Q35 + @Q36 + @Q37 + @Q38 + @Q39 + @Q40 + @Q41 + @Q42 + @Q43 + @Q44 + @Q45 + @Q46 + @Q47 + @Q48),
				@VALOR_R = 0

			IF @VARIA_PRECO_TAM = 1
			BEGIN
				SELECT @CONTADOR = 1
				WHILE @CONTADOR <= @NUMERO_TAMANHOS
					SELECT @VALOR_R = @VALOR_R + CONVERT(NUMERIC(14, 2), (CASE @CONTADOR
						WHEN 1  THEN @Q1  WHEN 2  THEN @Q2  WHEN 3  THEN @Q3  WHEN 4  THEN @Q4  WHEN 5  THEN @Q5  WHEN 6  THEN @Q6  WHEN 7  THEN @Q7  WHEN 8  THEN @Q8 	WHEN 9  THEN @Q9  WHEN 10 THEN @Q10 WHEN 11 THEN @Q11 WHEN 12 THEN @Q12 WHEN 13 THEN @Q13 WHEN 14 THEN @Q14 WHEN 15 THEN @Q15 WHEN 16 THEN @Q16 WHEN 17 THEN @Q17 WHEN 18 THEN @Q18 WHEN 19 THEN @Q19 WHEN 20 THEN @Q20 WHEN 21 THEN @Q21 WHEN 22 THEN @Q22 WHEN 23 THEN @Q23 WHEN 24 THEN @Q24 
						WHEN 25 THEN @Q25 WHEN 26 THEN @Q26 WHEN 27 THEN @Q27 WHEN 28 THEN @Q28 WHEN 29 THEN @Q29 WHEN 30 THEN @Q30 WHEN 31 THEN @Q31 WHEN 32 THEN @Q32 WHEN 33 THEN @Q33 WHEN 34 THEN @Q34 WHEN 35 THEN @Q35 WHEN 36 THEN @Q36 WHEN 37 THEN @Q37 WHEN 38 THEN @Q38 WHEN 39 THEN @Q39 WHEN 40 THEN @Q40 WHEN 41 THEN @Q41 WHEN 42 THEN @Q42 WHEN 43 THEN @Q43 WHEN 44 THEN @Q44 WHEN 45 THEN @Q45 WHEN 46 THEN @Q46 WHEN 47 THEN @Q47 WHEN 48 THEN @Q48
						END)*(((CASE CONVERT(INT, SUBSTRING(@PONTEIRO_PRECO_TAM , @CONTADOR, 1)) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END))) - @DESCONTO_ITEM_VENDA),  
						@CONTADOR = @CONTADOR + 1
			END
			ELSE
				SELECT @VALOR_R = (@QTDE_R * (@PRECO1 - @DESCONTO_ITEM_VENDA))
 
			/* VENDAS_PRODUTO */
			IF EXISTS (SELECT * FROM VENDAS_PRODUTO WHERE PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO)
				UPDATE VENDAS_PRODUTO 
					SET 	PRECO1 = @PRECO1, PRECO2 = @PRECO2, PRECO3 = @PRECO3, PRECO4 = @PRECO4, DESCONTO_ITEM = @DESCONTO_ITEM_VENDA, PACKS = CASE WHEN @TIPO_PACK = 0 THEN '' ELSE DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' ') END,
						VO1  = @Q1,  VO2  = @Q2,  VO3  = @Q3,  VO4  = @Q4,  VO5  = @Q5,  VO6  = @Q6,  VO7  = @Q7,  VO8  = @Q8,  VO9  = @Q9,  VO10 = @Q10, VO11 = @Q11, VO12 = @Q12, VO13 = @Q13, VO14 = @Q14, VO15 = @Q15, VO16 = @Q16, VO17 = @Q17, VO18 = @Q18, VO19 = @Q19, VO20 = @Q20, VO21 = @Q21, VO22 = @Q22, VO23 = @Q23, VO24 = @Q24,
						VO25 = @Q25, VO26 = @Q26, VO27 = @Q27, VO28 = @Q28, VO29 = @Q29, VO30 = @Q30, VO31 = @Q31, VO32 = @Q32, VO33 = @Q33, VO34 = @Q34, VO35 = @Q35, VO36 = @Q36, VO37 = @Q37, VO38 = @Q38, VO39 = @Q39, VO40 = @Q40, VO41 = @Q41, VO42 = @Q42, VO43 = @Q43, VO44 = @Q44, VO45 = @Q45, VO46 = @Q46, VO47 = @Q47, VO48 = @Q48
					WHERE PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
			ELSE
				INSERT INTO VENDAS_PRODUTO
					(PEDIDO, PRODUTO, COR_PRODUTO, ENTREGA, ITEM_PEDIDO, LIMITE_ENTREGA, QTDE_ORIGINAL, QTDE_ENTREGAR, PRECO1, PRECO2, PRECO3, PRECO4, DESCONTO_ITEM, PACKS, VO1,  VO2,  VO3,  VO4,  VO5,  VO6,  VO7,  VO8,  VO9,  VO10, VO11, VO12, VO13, VO14, VO15, VO16, VO17, VO18, VO19, VO20, VO21, VO22, VO23, VO24, VO25, VO26, VO27, VO28, VO29, VO30, VO31, VO32, VO33, VO34, VO35, VO36, VO37, VO38, VO39, VO40, VO41, VO42, VO43, VO44, VO45, VO46, VO47, VO48)
				VALUES	(@PEDIDO_VENDA, @PRODUTO, @COR_PRODUTO, @DATA, '0000', @DATA, 0, 0, @PRECO1, @PRECO2, @PRECO3, @PRECO4, @DESCONTO_ITEM_VENDA, CASE WHEN @TIPO_PACK = 0 THEN '' ELSE DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' ') END, @Q1,  @Q2,  @Q3,  @Q4,  @Q5,  @Q6,  @Q7,  @Q8,  @Q9,  @Q10, @Q11, @Q12, @Q13, @Q14, @Q15, @Q16, @Q17, @Q18, @Q19, @Q20, @Q21, @Q22, @Q23, @Q24, @Q25, @Q26, @Q27, @Q28, @Q29, @Q30, @Q31, @Q32, @Q33, @Q34, @Q35, @Q36, @Q37, @Q38, @Q39, @Q40, @Q41, @Q42, @Q43, @Q44, @Q45, @Q46, @Q47, @Q48)

			/* ROMANEIOS_RESERVAS */
			IF EXISTS (SELECT * FROM ROMANEIOS_RESERVAS WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PEDIDO = @COR_PRODUTO) 
				UPDATE ROMANEIOS_RESERVAS 
					SET 	R1  = @Q1,  R2  = @Q2,  R3  = @Q3,  R4  = @Q4,  R5  = @Q5,  R6  = @Q6,  R7  = @Q7,  R8  = @Q8,  R9  = @Q9,  R10 = @Q10, R11 = @Q11, R12 = @Q12, R13 = @Q13, R14 = @Q14, R15 = @Q15, R16 = @Q16, R17 = @Q17, R18 = @Q18, R19 = @Q19, R20 = @Q20, R21 = @Q21, R22 = @Q22, R23 = @Q23, R24 = @Q24,
					     	R25 = @Q25, R26 = @Q26, R27 = @Q27, R28 = @Q28, R29 = @Q29, R30 = @Q30, R31 = @Q31, R32 = @Q32, R33 = @Q33, R34 = @Q34, R35 = @Q35, R36 = @Q36, R37 = @Q37, R38 = @Q38, R39 = @Q39, R40 = @Q40, R41 = @Q41, R42 = @Q42, R43 = @Q43, R44 = @Q44, R45 = @Q45, R46 = @Q46, R47 = @Q47, R48 = @Q48,
						QTDE_R = @QTDE_R, VALOR_R = @VALOR_R, PACKS = CASE WHEN @TIPO_PACK = 0 THEN '' ELSE DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' ') END
					WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
			ELSE
				INSERT INTO ROMANEIOS_RESERVAS (ROMANEIO, FILIAL, PEDIDO, PRODUTO, COR_PRODUTO, COR_PEDIDO, ENTREGA, ITEM_PEDIDO, QTDE_R, VALOR_R, PACKS, 
					    R1,  R2,  R3,  R4,  R5,  R6,  R7,  R8,  R9,  R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R22, R23, R24,
					    R25, R26, R27, R28, R29, R30, R31, R32, R33, R34, R35, R36, R37, R38, R39, R40 ,R41, R42, R43, R44, R45, R46, R47, R48)
					    VALUES (@ROMANEIO, @FILIAL, @PEDIDO_VENDA, @PRODUTO, @COR_PRODUTO, @COR_PRODUTO, @DATA, '0000', @QTDE_R, @VALOR_R, CASE WHEN @TIPO_PACK = 0 THEN '' ELSE DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' ') END, 
					    @Q1,  @Q2,  @Q3,  @Q4,  @Q5,  @Q6,  @Q7,  @Q8,  @Q9,  @Q10, @Q11, @Q12, @Q13, @Q14, @Q15, @Q16, @Q17, @Q18, @Q19, @Q20, @Q21, @Q22, @Q23, @Q24,
					    @Q25, @Q26, @Q27, @Q28, @Q29, @Q30, @Q31, @Q32, @Q33, @Q34, @Q35, @Q36, @Q37, @Q38, @Q39, @Q40, @Q41, @Q42, @Q43, @Q44, @Q45, @Q46, @Q47, @Q48) 

			IF @TIPO_PACK = 1
				SELECT @QTDE_D = @QTDE_D - @QTDE_P
			ELSE
			BEGIN
				SELECT 	@D1  = @D1  - @Q1,  @D2  = @D2  - @Q2,  @D3  = @D3  - @Q3,  @D4  = @D4  - @Q4,  @D5  = @D5  - @Q5,  @D6  = @D6  - @Q6,  @D7  = @D7  - @Q7,  @D8  = @D8  - @Q8,  @D9  = @D9  - @Q9,  @D10 = @D10 - @Q10, @D11 = @D11 - @Q11, @D12 = @D12 - @Q12, @D13 = @D13 - @Q13, @D14 = @D14 - @Q14, @D15 = @D15 - @Q15, @D16 = @D16 - @Q16,
					@D17 = @D17 - @Q17, @D18 = @D18 - @Q18, @D19 = @D19 - @Q19, @D20 = @D20 - @Q20, @D21 = @D21 - @Q21, @D22 = @D22 - @Q22, @D23 = @D23 - @Q23, @D24 = @D24 - @Q24, @D25 = @D25 - @Q25, @D26 = @D26 - @Q26, @D27 = @D27 - @Q27, @D28 = @D28 - @Q28, @D29 = @D29 - @Q29, @D30 = @D30 - @Q30, @D31 = @D31 - @Q31, @D32 = @D32 - @Q32,
					@D33 = @D33 - @Q33, @D34 = @D34 - @Q34, @D35 = @D35 - @Q35, @D36 = @D36 - @Q36, @D37 = @D37 - @Q37, @D38 = @D38 - @Q38, @D39 = @D39 - @Q39, @D40 = @D40 - @Q40, @D41 = @D41 - @Q41, @D42 = @D42 - @Q42, @D43 = @D43 - @Q43, @D44 = @D44 - @Q44, @D45 = @D45 - @Q45, @D46 = @D46 - @Q46, @D47 = @D47 - @Q47, @D48 = @D48 - @Q48
				SELECT @QTDE_D = (@D1 + @D2 + @D3 + @D4 + @D5 + @D6 + @D7 + @D8 + @D9 + @D10 + @D11 + @D12 + @D13 + @D14 + @D15 + @D16 + @D17 + @D18 + @D19 + @D20 + @D21 + @D22 + @D23 + @D24 + @D25 + @D26 + @D27 + @D28 + @D29 + @D30 + @D31 + @D32 + @D33 + @D34 + @D35 + @D36 + @D37 + @D38 + @D39 + @D40 + @D41 + @D42 + @D43 + @D44 + @D45 + @D46 + @D47 + @D48)	
			END

			IF @STATUS <> 'D' AND @STATUS <> 'F'
				SELECT @STATUS = 'P'

			FETCH NEXT FROM CURSOR_ITENS INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
		END
		/* SE SOBRARAM QTDES */
		WHILE @QTDE_D > 0
		BEGIN
			FETCH FIRST FROM CURSOR_ITENS INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
			WHILE @@FETCH_STATUS = 0
			BEGIN
				IF @TIPO_PACK = 1
					SELECT 	@QTDE_D = @QTDE_D - 1, @QTDE_P = 1,
						@Q1  = @P1,  @Q2  = @P2,  @Q3  = @P3,  @Q4  = @P4,  @Q5  = @P5,  @Q6  = @P6,  @Q7  = @P7,  @Q8  = @P8,  @Q9  = @P9,  @Q10 = @P10, @Q11 = @P11, @Q12 = @P12, @Q13 = @P13, @Q14 = @P14, @Q15 = @P15, @Q16 = @P16, @Q17 = @P17, @Q18 = @P18, @Q19 = @Q19, @Q20 = @P20, @Q21 = @P21, @Q22 = @P22, @Q23 = @P23, @Q24 = @P24,
						@Q25 = @P25, @Q26 = @P26, @Q27 = @P27, @Q28 = @P28, @Q29 = @P29, @Q30 = @P30, @Q31 = @P31, @Q32 = @P32, @Q33 = @P33, @Q34 = @P34, @Q35 = @P35, @Q36 = @P36, @Q37 = @P37, @Q38 = @P38, @Q39 = @P39, @Q40 = @P40, @Q41 = @P41, @Q42 = @P42, @Q43 = @P43, @Q44 = @P44, @Q45 = @P45, @Q46 = @P46, @Q47 = @P47, @Q48 = @P48
				ELSE
				BEGIN
					SELECT  @Q1  = CASE WHEN @D1  > 0 THEN 1 ELSE 0 END, @Q2  = CASE WHEN @D2  > 0 THEN 1 ELSE 0 END, @Q3  = CASE WHEN @D3  > 0 THEN 1 ELSE 0 END, @Q4  = CASE WHEN @D4  > 0 THEN 1 ELSE 0 END, @Q5  = CASE WHEN @D5  > 0 THEN 1 ELSE 0 END, @Q6  = CASE WHEN @D6  > 0 THEN 1 ELSE 0 END, @Q7  = CASE WHEN @D7  > 0 THEN 1 ELSE 0 END, @Q8  = CASE WHEN @D8  > 0 THEN 1 ELSE 0 END, @Q9  = CASE WHEN @D9  > 0 THEN 1 ELSE 0 END, @Q10 = CASE WHEN @D10 > 0 THEN 1 ELSE 0 END, @Q11 = CASE WHEN @D11 > 0 THEN 1 ELSE 0 END, @Q12 = CASE WHEN @D12 > 0 THEN 1 ELSE 0 END, @Q13 = CASE WHEN @D13 > 0 THEN 1 ELSE 0 END, @Q14 = CASE WHEN @D14 > 0 THEN 1 ELSE 0 END, @Q15 = CASE WHEN @D15 > 0 THEN 1 ELSE 0 END, @Q16 = CASE WHEN @D16 > 0 THEN 1 ELSE 0 END, @Q17 = CASE WHEN @D17 > 0 THEN 1 ELSE 0 END, @Q18 = CASE WHEN @D18 > 0 THEN 1 ELSE 0 END, @Q19 = CASE WHEN @D19 > 0 THEN 1 ELSE 0 END, @Q20 = CASE WHEN @D20 > 0 THEN 1 ELSE 0 END, @Q21 = CASE WHEN @D21 > 0 THEN 1 ELSE 0 END, @Q22 = CASE WHEN @D22 > 0 THEN 1 ELSE 0 END, @Q23 = CASE WHEN @D23 > 0 THEN 1 ELSE 0 END, @Q24 = CASE WHEN @D24 > 0 THEN 1 ELSE 0 END,
						@Q25 = CASE WHEN @D25 > 0 THEN 1 ELSE 0 END, @Q26 = CASE WHEN @D26 > 0 THEN 1 ELSE 0 END, @Q27 = CASE WHEN @D27 > 0 THEN 1 ELSE 0 END, @Q28 = CASE WHEN @D28 > 0 THEN 1 ELSE 0 END, @Q29 = CASE WHEN @D29 > 0 THEN 1 ELSE 0 END, @Q30 = CASE WHEN @D30 > 0 THEN 1 ELSE 0 END, @Q31 = CASE WHEN @D31 > 0 THEN 1 ELSE 0 END, @Q32 = CASE WHEN @D32 > 0 THEN 1 ELSE 0 END, @Q33 = CASE WHEN @D33 > 0 THEN 1 ELSE 0 END, @Q34 = CASE WHEN @D34 > 0 THEN 1 ELSE 0 END, @Q35 = CASE WHEN @D35 > 0 THEN 1 ELSE 0 END, @Q36 = CASE WHEN @D36 > 0 THEN 1 ELSE 0 END, @Q37 = CASE WHEN @D37 > 0 THEN 1 ELSE 0 END, @Q38 = CASE WHEN @D38 > 0 THEN 1 ELSE 0 END, @Q39 = CASE WHEN @D39 > 0 THEN 1 ELSE 0 END, @Q40 = CASE WHEN @D40 > 0 THEN 1 ELSE 0 END, @Q41 = CASE WHEN @D41 > 0 THEN 1 ELSE 0 END, @Q42 = CASE WHEN @D42 > 0 THEN 1 ELSE 0 END, @Q43 = CASE WHEN @D43 > 0 THEN 1 ELSE 0 END, @Q44 = CASE WHEN @D44 > 0 THEN 1 ELSE 0 END, @Q45 = CASE WHEN @D45 > 0 THEN 1 ELSE 0 END, @Q46 = CASE WHEN @D46 > 0 THEN 1 ELSE 0 END, @Q47 = CASE WHEN @D47 > 0 THEN 1 ELSE 0 END, @Q48 = CASE WHEN @D48 > 0 THEN 1 ELSE 0 END
					SELECT  @D1  = @D1  - CASE WHEN @D1  > 0 THEN 1 ELSE 0 END, @D2  = @D2  - CASE WHEN @D2  > 0 THEN 1 ELSE 0 END, @D3  = @D3  - CASE WHEN @D3  > 0 THEN 1 ELSE 0 END, @D4  = @D4  - CASE WHEN @D4  > 0 THEN 1 ELSE 0 END, @D5  = @D5  - CASE WHEN @D5  > 0 THEN 1 ELSE 0 END, @D6  = @D6  - CASE WHEN @D6  > 0 THEN 1 ELSE 0 END, @D7  = @D7  - CASE WHEN @D7  > 0 THEN 1 ELSE 0 END, @D8  = @D8  - CASE WHEN @D8  > 0 THEN 1 ELSE 0 END, @D9  = @D9  - CASE WHEN @D9  > 0 THEN 1 ELSE 0 END, @D10 = @D10 - CASE WHEN @D10 > 0 THEN 1 ELSE 0 END, @D11 = @D11 - CASE WHEN @D11 > 0 THEN 1 ELSE 0 END, @D12 = @D12 - CASE WHEN @D12 > 0 THEN 1 ELSE 0 END, @D13 = @D13 - CASE WHEN @D13 > 0 THEN 1 ELSE 0 END, @D14 = @D14 - CASE WHEN @D14 > 0 THEN 1 ELSE 0 END, @D15 = @D15 - CASE WHEN @D15 > 0 THEN 1 ELSE 0 END, @D16 = @D16 - CASE WHEN @D16 > 0 THEN 1 ELSE 0 END, @D17 = @D17 - CASE WHEN @D17 > 0 THEN 1 ELSE 0 END, @D18 = @D18 - CASE WHEN @D18 > 0 THEN 1 ELSE 0 END, @D19 = @D19 - CASE WHEN @D19 > 0 THEN 1 ELSE 0 END, @D20 = @D20 - CASE WHEN @D20 > 0 THEN 1 ELSE 0 END, @D21 = @D21 - CASE WHEN @D21 > 0 THEN 1 ELSE 0 END, @D22 = @D22 - CASE WHEN @D22 > 0 THEN 1 ELSE 0 END, @D23 = @D23 - CASE WHEN @D23 > 0 THEN 1 ELSE 0 END, @D24 = @D24 - CASE WHEN @D24 > 0 THEN 1 ELSE 0 END,
						@D25 = @D25 - CASE WHEN @D25 > 0 THEN 1 ELSE 0 END, @D26 = @D26 - CASE WHEN @D26 > 0 THEN 1 ELSE 0 END, @D27 = @D27 - CASE WHEN @D27 > 0 THEN 1 ELSE 0 END, @D28 = @D28 - CASE WHEN @D28 > 0 THEN 1 ELSE 0 END, @D29 = @D29 - CASE WHEN @D29 > 0 THEN 1 ELSE 0 END, @D30 = @D30 - CASE WHEN @D30 > 0 THEN 1 ELSE 0 END, @D31 = @D31 - CASE WHEN @D31 > 0 THEN 1 ELSE 0 END, @D32 = @D32 - CASE WHEN @D32 > 0 THEN 1 ELSE 0 END, @D33 = @D33 - CASE WHEN @D33 > 0 THEN 1 ELSE 0 END, @D34 = @D34 - CASE WHEN @D34 > 0 THEN 1 ELSE 0 END, @D35 = @D35 - CASE WHEN @D35 > 0 THEN 1 ELSE 0 END, @D36 = @D36 - CASE WHEN @D36 > 0 THEN 1 ELSE 0 END, @D37 = @D37 - CASE WHEN @D37 > 0 THEN 1 ELSE 0 END, @D38 = @D38 - CASE WHEN @D38 > 0 THEN 1 ELSE 0 END, @D39 = @D39 - CASE WHEN @D39 > 0 THEN 1 ELSE 0 END, @D40 = @D40 - CASE WHEN @D40 > 0 THEN 1 ELSE 0 END, @D41 = @D41 - CASE WHEN @D41 > 0 THEN 1 ELSE 0 END, @D42 = @D42 - CASE WHEN @D42 > 0 THEN 1 ELSE 0 END, @D43 = @D43 - CASE WHEN @D43 > 0 THEN 1 ELSE 0 END, @D44 = @D44 - CASE WHEN @D44 > 0 THEN 1 ELSE 0 END, @D45 = @D45 - CASE WHEN @D45 > 0 THEN 1 ELSE 0 END, @D46 = @D46 - CASE WHEN @D46 > 0 THEN 1 ELSE 0 END, @D47 = @D47 - CASE WHEN @D47 > 0 THEN 1 ELSE 0 END, @D48 = @D48 - CASE WHEN @D48 > 0 THEN 1 ELSE 0 END
					SELECT @QTDE_D = @D1 + @D2 + @D3 + @D4 + @D5 + @D6 + @D7 + @D8 + @D9 + @D10 + @D11 + @D12 + @D13 + @D14 + @D15 + @D16 + @D17 + @D18 + @D19 + @D20 + @D21 + @D22 + @D23 + @D24 +  @D25 + @D26 + @D27 + @D28 + @D29 + @D30 + @D31 + @D32 + @D33 + @D34 + @D35 + @D36 + @D37 + @D38 + @D39 + @D40 + @D41 + @D42 + @D43 + @D44 + @D45 + @D46 + @D47 + @D48
				END
				/* PEDIDO DE VENDA */
				SELECT @PEDIDO_VENDA = NULL, @CODIGO_TAB_PRECO = @TAB_PRECO, @PRECO1 = 0, @PRECO2 = 0, @PRECO3 = 0, @PRECO4 = 0, @DESCONTO_ITEM_VENDA = 0
	
				/* TABELA DE PRECO */
				IF @TAB_PRECO_CLIENTE = 1
				BEGIN
					SELECT @CODIGO_TAB_PRECO = CODIGO_TAB_PRECO 
						FROM CLIENTES_ATACADO 
						WHERE CLIENTE_ATACADO = @CLIENTE_ATACADO
					IF ISNULL(@CODIGO_TAB_PRECO, '') = ''
						SET @CODIGO_TAB_PRECO = @TAB_PRECO
				END
					
				SELECT @PEDIDO_VENDA = PEDIDO 
					FROM VENDAS
					WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND CLIENTE_ATACADO = @CLIENTE_ATACADO
	
				IF @PEDIDO_VENDA IS NULL OR @@ROWCOUNT = 0
				BEGIN
					/* INCLUI NOVO PEDIDO */
					EXEC LX_SEQUENCIAL 'VENDAS.PEDIDO', NULL, @PEDIDO_VENDA OUTPUT
					INSERT INTO VENDAS
						(PEDIDO, ROMANEIO, COLECAO, CODIGO_TAB_PRECO, TIPO, CONDICAO_PGTO, FILIAL, CLIENTE_ATACADO, NOME_CLIFOR_ENTREGA, TRANSPORTADORA, MOEDA, REPRESENTANTE, GERENTE, COMISSAO, COMISSAO_GERENTE, PORCENTAGEM_ACERTO, EMISSAO, CADASTRAMENTO, TOT_QTDE_ORIGINAL, TOT_QTDE_ENTREGAR, TOT_VALOR_ORIGINAL, TOT_VALOR_ENTREGAR, DESCONTO, ENCARGO, DESCONTO_COND_PGTO, VALOR_IPI, TABELA_FILHA, OBS, APROVACAO, DESCONTO_SOBRE_1, DESCONTO_SOBRE_2, DESCONTO_SOBRE_3, DESCONTO_SOBRE_4, PORC_DESCONTO_DIGITADO, PORC_DESCONTO, PORC_DESCONTO_COND_PGTO, PORC_ENCARGO, ACEITA_PECAS_PEQUENAS, ACEITA_PECAS_COM_CORTE, INDICADOR_VENDA, FILIAL_DIGITACAO  , TIPO_CAIXA, TIPO_FRETE, ENTREGA_CIF, TRANSP_REDESPACHO)
					VALUES  (@PEDIDO_VENDA, @ROMANEIO, @COLECAO, @CODIGO_TAB_PRECO, @TIPO_VENDA, @COND_PGTO, @FILIAL, @CLIENTE_ATACADO, @CLIENTE_ATACADO, CASE WHEN @UITILIZA_TRANSP_CLIENTE=1 THEN @TRANSPORTADORA_CLIENTE ELSE @TRANSPORTADORA END, @MOEDA, @REPRESENTANTE, @GERENTE, @COMISSAO, @COMISSAO_GERENTE, @PORCENTAGEM_ACERTO, CONVERT(VARCHAR(8), GETDATE(), 112), CONVERT(VARCHAR(8), GETDATE(), 112), 0, 0, 0,0,0,0,0,0, 'VENDAS_PRODUTO', 'PEDIDO GERADO PELO PROCESSO DE DISTRIBUIÇÃO. ROMANEIO NO. ' + @ROMANEIO, 'E', 0,0,0,0, 1, 0, @DESCONTO_COND_PGTO, @ENCARGO, 100, 100, 'D', @FILIAL, @TIPO_CAIXA, @TIPO_FRETE, @ENTREGA_CIF, CASE WHEN @UITILIZA_TRANSP_CLIENTE=1 THEN @TRANSP_REDESPACHO ELSE @TRANSPORTADORA END)
					IF @@ROWCOUNT = 0
					BEGIN
						SELECT @ERRNO = 30002, @ERRMSG = 'PROBLEMA NO INSERT EM VENDAS !'
						GOTO ERROR
					END
				END
				ELSE
				BEGIN
					IF EXISTS(SELECT * FROM VENDAS WHERE PEDIDO = @PEDIDO_VENDA AND (PORC_DESCONTO_COND_PGTO <> @DESCONTO_COND_PGTO OR PORC_ENCARGO <> @ENCARGO OR CONDICAO_PGTO <> @COND_PGTO OR CODIGO_TAB_PRECO <> @CODIGO_TAB_PRECO))
					BEGIN
						UPDATE VENDAS SET PORC_DESCONTO_COND_PGTO = @DESCONTO_COND_PGTO, PORC_ENCARGO = @ENCARGO, CONDICAO_PGTO = @COND_PGTO, CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO
							WHERE PEDIDO = @PEDIDO_VENDA
						IF @@ROWCOUNT = 0
						BEGIN
							SELECT @ERRNO = 30002, @ERRMSG = 'PROBLEMA NO UPDATE EM VENDAS !'
							GOTO ERROR
						END
					END
				END

				/* PREÇO */
				IF @VARIA_PRECO_COR = 1
					SELECT @PRECO1 = PRECO1, @PRECO2 = PRECO2, @PRECO3 = PRECO3, @PRECO4 = PRECO4
						FROM PRODUTOS_PRECO_COR
						WHERE CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
				ELSE
					SELECT @PRECO1 = PRECO1, @PRECO2 = PRECO2, @PRECO3 = PRECO3, @PRECO4 = PRECO4
						FROM PRODUTOS_PRECOS
						WHERE CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO AND PRODUTO = @PRODUTO
	
				/* SE POSSUI DESCONTO/ENCARGO NO ITEM */
				IF @DESCONTO_ITEM <> 0
				BEGIN
					IF @INCIDE_SOBRE_PRECO = 1
						SELECT 	@PRECO1 = (@PRECO1 - ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)),
							@PRECO2 = (@PRECO2 - ROUND(@PRECO2 * (@DESCONTO_ITEM / 100), 2)),
							@PRECO3 = (@PRECO3 - ROUND(@PRECO3 * (@DESCONTO_ITEM / 100), 2)),
							@PRECO4 = (@PRECO4 - ROUND(@PRECO4 * (@DESCONTO_ITEM / 100), 2))
					ELSE
					BEGIN
						IF @VARIA_PRECO_TAM = 0
							SELECT @DESCONTO_ITEM_VENDA = ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)
						ELSE
						BEGIN
							SELECT 	@CONTADOR = 0
							SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO1 > 0 THEN (@PRECO1 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
								@CONTADOR = @CONTADOR + CASE WHEN @PRECO1 > 0 THEN 1 ELSE 0 END
							SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO2 > 0 THEN (@PRECO2 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
								@CONTADOR = @CONTADOR + CASE WHEN @PRECO2 > 0 THEN 1 ELSE 0 END
							SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO3 > 0 THEN (@PRECO3 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
								@CONTADOR = @CONTADOR + CASE WHEN @PRECO3 > 0 THEN 1 ELSE 0 END
							SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO4 > 0 THEN (@PRECO4 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
								@CONTADOR = @CONTADOR + CASE WHEN @PRECO4 > 0 THEN 1 ELSE 0 END
							SELECT @DESCONTO_ITEM_VENDA = ROUND(@DESCONTO_ITEM_VENDA / CASE WHEN @CONTADOR = 0 THEN 1 ELSE @CONTADOR END, 2)
						END
					END
				END
				/* CALCULA TOTAL DO ITEM */
				SELECT 	@QTDE_R = (@Q1 + @Q2 + @Q3 + @Q4 + @Q5 + @Q6 + @Q7 + @Q8 + @Q9 + @Q10 + @Q11 + @Q12 + @Q13 + @Q14 + @Q15 + @Q16 + @Q17 + @Q18 + @Q19 + @Q20 + @Q21 + @Q22 + @Q23 + @Q24 +  @Q25 + @Q26 + @Q27 + @Q28 + @Q29 + @Q30 + @Q31 + @Q32 + @Q33 + @Q34 + @Q35 + @Q36 + @Q37 + @Q38 + @Q39 + @Q40 + @Q41 + @Q42 + @Q43 + @Q44 + @Q45 + @Q46 + @Q47 + @Q48),
					@VALOR_R = 0

				IF @VARIA_PRECO_TAM = 1
				BEGIN
					SELECT @CONTADOR = 1
					WHILE @CONTADOR <= @NUMERO_TAMANHOS
						SELECT @VALOR_R = @VALOR_R + CONVERT(NUMERIC(14, 2), (CASE @CONTADOR
							WHEN 1  THEN @Q1  WHEN 2  THEN @Q2  WHEN 3  THEN @Q3  WHEN 4  THEN @Q4  WHEN 5  THEN @Q5  WHEN 6  THEN @Q6  WHEN 7  THEN @Q7  WHEN 8  THEN @Q8 	WHEN 9  THEN @Q9  WHEN 10 THEN @Q10 WHEN 11 THEN @Q11 WHEN 12 THEN @Q12 WHEN 13 THEN @Q13 WHEN 14 THEN @Q14 WHEN 15 THEN @Q15 WHEN 16 THEN @Q16 WHEN 17 THEN @Q17 WHEN 18 THEN @Q18 WHEN 19 THEN @Q19 WHEN 20 THEN @Q20 WHEN 21 THEN @Q21 WHEN 22 THEN @Q22 WHEN 23 THEN @Q23 WHEN 24 THEN @Q24 
							WHEN 25 THEN @Q25 WHEN 26 THEN @Q26 WHEN 27 THEN @Q27 WHEN 28 THEN @Q28 WHEN 29 THEN @Q29 WHEN 30 THEN @Q30 WHEN 31 THEN @Q31 WHEN 32 THEN @Q32 WHEN 33 THEN @Q33 WHEN 34 THEN @Q34 WHEN 35 THEN @Q35 WHEN 36 THEN @Q36 WHEN 37 THEN @Q37 WHEN 38 THEN @Q38 WHEN 39 THEN @Q39 WHEN 40 THEN @Q40 WHEN 41 THEN @Q41 WHEN 42 THEN @Q42 WHEN 43 THEN @Q43 WHEN 44 THEN @Q44 WHEN 45 THEN @Q45 WHEN 46 THEN @Q46 WHEN 47 THEN @Q47 WHEN 48 THEN @Q48
							END)*(((CASE CONVERT(INT, SUBSTRING(@PONTEIRO_PRECO_TAM , @CONTADOR, 1)) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END))) - @DESCONTO_ITEM_VENDA),  
							@CONTADOR = @CONTADOR + 1

				END
				ELSE
					SELECT @VALOR_R = (@QTDE_R * (@PRECO1 - @DESCONTO_ITEM_VENDA))
	 
				/* VENDAS_PRODUTO */
				IF EXISTS (SELECT * FROM VENDAS_PRODUTO WHERE PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO)
					UPDATE VENDAS_PRODUTO 
						SET 	PRECO1 = @PRECO1, PRECO2 = @PRECO2, PRECO3 = @PRECO3, PRECO4 = @PRECO4, DESCONTO_ITEM = @DESCONTO_ITEM_VENDA, PACKS = CASE WHEN @TIPO_PACK = 1 THEN SUBSTRING(PACKS, 1, 2) + DBO.FX_PADL(STR(CONVERT(INT, (SUBSTRING(PACKS, 3, 3) + @QTDE_P))), 3, ' ') ELSE PACKS END,
							VO1  = VO1  + @Q1,  VO2  = VO2  + @Q2,  VO3  = VO3  + @Q3,  VO4  = VO4  + @Q4,  VO5  = VO5  + @Q5,  VO6  = VO6  + @Q6,  VO7  = VO7  + @Q7,  VO8  = VO8  + @Q8,  VO9  = VO9  + @Q9,  VO10 = VO10 + @Q10, VO11 = VO11 + @Q11, VO12 = VO12 + @Q12, VO13 = VO13 + @Q13, VO14 = VO14 + @Q14, VO15 = VO15 + @Q15, VO16 = VO16 + @Q16, VO17 = VO17 + @Q17, VO18 = VO18 + @Q18, VO19 = VO19 + @Q19, VO20 = VO20 + @Q20, VO21 = VO21 + @Q21, VO22 = VO22 + @Q22, VO23 = VO23 + @Q23, VO24 = VO24 + @Q24,  VO25 = VO25 + @Q25, VO26 = VO26 + @Q26, VO27 = VO27 + @Q27, VO28 = VO28 + @Q28, VO29 = VO29 + @Q29, VO30 = VO30 + @Q30, VO31 = VO31 + @Q31, VO32 = VO32 + @Q32, VO33 = VO33 + @Q33, VO34 = VO34 + @Q34, VO35 = VO35 + @Q35, VO36 = VO36 + @Q36, VO37 = VO37 + @Q37, VO38 = VO38 + @Q38, VO39 = VO39 + @Q39, VO40 = VO40 + @Q40, VO41 = VO41 + @Q41, VO42 = VO42 + @Q42, VO43 = VO43 + @Q43, VO44 = VO44 + @Q44, VO45 = VO45 + @Q45, VO46 = VO46 + @Q46, VO47 = VO47 + @Q47, VO48 = VO48 + @Q48
						WHERE PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
				ELSE
					INSERT INTO VENDAS_PRODUTO
						(PEDIDO, PRODUTO, COR_PRODUTO, ENTREGA, ITEM_PEDIDO, LIMITE_ENTREGA, QTDE_ORIGINAL, QTDE_ENTREGAR, PRECO1, PRECO2, PRECO3, PRECO4, DESCONTO_ITEM, PACKS, VO1,  VO2,  VO3,  VO4,  VO5,  VO6,  VO7,  VO8,  VO9,  VO10, VO11, VO12, VO13, VO14, VO15, VO16, VO17, VO18, VO19, VO20, VO21, VO22, VO23, VO24, VO25, VO26, VO27, VO28, VO29, VO30, VO31, VO32, VO33, VO34, VO35, VO36, VO37, VO38, VO39, VO40, VO41, VO42, VO43, VO44, VO45, VO46, VO47, VO48)
					VALUES	(@PEDIDO_VENDA, @PRODUTO, @COR_PRODUTO, @DATA, '0000', @DATA, 0, 0, @PRECO1, @PRECO2, @PRECO3, @PRECO4, @DESCONTO_ITEM_VENDA, CASE WHEN @TIPO_PACK = 0 THEN '' ELSE DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' ') END, @Q1,  @Q2,  @Q3,  @Q4,  @Q5,  @Q6,  @Q7,  @Q8,  @Q9,  @Q10, @Q11, @Q12, @Q13, @Q14, @Q15, @Q16, @Q17, @Q18, @Q19, @Q20, @Q21, @Q22, @Q23, @Q24, @Q25, @Q26, @Q27, @Q28, @Q29, @Q30, @Q31, @Q32, @Q33, @Q34, @Q35, @Q36, @Q37, @Q38, @Q39, @Q40, @Q41, @Q42, @Q43, @Q44, @Q45, @Q46, @Q47, @Q48)

				/* ROMANEIOS_RESERVAS */
				IF EXISTS (SELECT * FROM ROMANEIOS_RESERVAS WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PEDIDO = @COR_PRODUTO) 
					UPDATE ROMANEIOS_RESERVAS 
						SET 	R1  = R1  + @Q1,  R2  = R2  + @Q2,  R3  = R3  + @Q3,  R4  = R4  + @Q4,  R5  = R5  + @Q5,  R6  = R6  + @Q6,  R7  = R7  + @Q7,  R8  = R8  + @Q8,  R9  = R9  + @Q9,  R10 = R10 + @Q10, R11 = R11 + @Q11, R12 = R12 + @Q12, R13 = R13 + @Q13, R14 = R14 + @Q14, R15 = R15 + @Q15, R16 = R16 + @Q16, R17 = R17 + @Q17, R18 = R18 + @Q18, R19 = R19 + @Q19, R20 = R20 + @Q20, R21 = R21 + @Q21, R22 = R22 + @Q22, R23 = R23 + @Q23, R24 = R24 + @Q24,
							R25 = R25 + @Q25, R26 = R26 + @Q26, R27 = R27 + @Q27, R28 = R28 + @Q28, R29 = R29 + @Q29, R30 = R30 + @Q30, R31 = R31 + @Q31, R32 = R32 + @Q32, R33 = R33 + @Q33, R34 = R34 + @Q34, R35 = R35 + @Q35, R36 = R36 + @Q36, R37 = R37 + @Q37, R38 = R38 + @Q38, R39 = R39 + @Q39, R40 = R40 + @Q40, R41 = R41 + @Q41, R42 = R42 + @Q42, R43 = R43 + @Q43, R44 = R44 + @Q44, R45 = R45 + @Q45, R46 = R46 + @Q46, R47 = R47 + @Q47, R48 = R48 + @Q48,
							QTDE_R = QTDE_R + @QTDE_R, VALOR_R = VALOR_R + @VALOR_R, PACKS = CASE WHEN @TIPO_PACK = 1 THEN SUBSTRING(PACKS, 1, 2) + DBO.FX_PADL(STR(CONVERT(INT, (SUBSTRING(PACKS, 3, 3) + @QTDE_P))), 3, ' ') ELSE PACKS END
						WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
				ELSE
					INSERT INTO ROMANEIOS_RESERVAS (ROMANEIO, FILIAL, PEDIDO, PRODUTO, COR_PRODUTO, COR_PEDIDO, ENTREGA, ITEM_PEDIDO, QTDE_R, VALOR_R, PACKS, 
						    R1,  R2,  R3,  R4,  R5,  R6,  R7,  R8,  R9,  R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R22, R23, R24,
						    R25, R26, R27, R28, R29, R30, R31, R32, R33, R34, R35, R36, R37, R38, R39, R40 ,R41, R42, R43, R44, R45, R46, R47, R48)
					VALUES 	   (@ROMANEIO, @FILIAL, @PEDIDO_VENDA, @PRODUTO, @COR_PRODUTO, @COR_PRODUTO, @DATA, '0000', @QTDE_R, @VALOR_R, CASE WHEN @TIPO_PACK = 0 THEN '' ELSE DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' ') END, 
						    @Q1,  @Q2,  @Q3,  @Q4,  @Q5,  @Q6,  @Q7,  @Q8,  @Q9,  @Q10, @Q11, @Q12, @Q13, @Q14, @Q15, @Q16, @Q17, @Q18, @Q19, @Q20, @Q21, @Q22, @Q23, @Q24,
						    @Q25, @Q26, @Q27, @Q28, @Q29, @Q30, @Q31, @Q32, @Q33, @Q34, @Q35, @Q36, @Q37, @Q38, @Q39, @Q40, @Q41, @Q42, @Q43, @Q44, @Q45, @Q46, @Q47, @Q48) 
				
				IF @STATUS <> 'D' AND @STATUS <> 'F'
					SELECT @STATUS = 'P'
	
				IF @QTDE_D = 0
					BREAK
				ELSE
					FETCH NEXT FROM CURSOR_ITENS INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
			END
				IF @QTDE_D = 0
					BREAK
				
		END
		CLOSE CURSOR_ITENS
		DEALLOCATE CURSOR_ITENS
		/* ATUALIZA STATUS */
		UPDATE ROMANEIOS_PRODUTO SET STATUS = @STATUS, FILTROS_PROCESSO = 'PROCESSO AUTOMÁTICO DE DISTRIBUIÇÃO.'
			WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO

	END
	ELSE
	/* PROCESSO PACK COR */
	BEGIN

		/* APAGA VENDAS_PRODUTO */
		DECLARE CURSOR_DELETE CURSOR FOR 
			SELECT DISTINCT A.PEDIDO
				FROM VENDAS A JOIN VENDAS_PRODUTO B ON A.PEDIDO = B.PEDIDO
				WHERE A.ROMANEIO = @ROMANEIO AND A.FILIAL = @FILIAL AND B.PRODUTO = @PRODUTO AND B.COR_PRODUTO = @COR_PRODUTO
		OPEN CURSOR_DELETE
		FETCH NEXT FROM CURSOR_DELETE INTO @PEDIDO_VENDA
		WHILE @@FETCH_STATUS = 0
		BEGIN
			DELETE FROM VENDAS_PRODUTO WHERE PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
			IF NOT EXISTS(SELECT * FROM VENDAS_PRODUTO WHERE PEDIDO = @PEDIDO_VENDA)
				DELETE FROM VENDAS WHERE PEDIDO = @PEDIDO_VENDA
			FETCH NEXT FROM CURSOR_DELETE INTO @PEDIDO_VENDA
		END
		CLOSE CURSOR_DELETE
		DEALLOCATE CURSOR_DELETE
		SET @STATUS = 'P'
		/* LIMPA TABELA TEMPORARIA */
		TRUNCATE TABLE #TMP_ESTOQUE_DISTRIBUICAO
		/* DISPONIVEL */
--AQUI		
		SELECT @SELECT =' SELECT COR_PRODUTO, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D1, 0))) D1, DBO.LX_POSITIVO_INT(SUM(ISNULL(D2, 0))) D2, DBO.LX_POSITIVO_INT(SUM(ISNULL(D3, 0))) D3, DBO.LX_POSITIVO_INT(SUM(ISNULL(D4, 0))) D4, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D5, 0))) D5, DBO.LX_POSITIVO_INT(SUM(ISNULL(D6, 0))) D6, DBO.LX_POSITIVO_INT(SUM(ISNULL(D7, 0))) D7, DBO.LX_POSITIVO_INT(SUM(ISNULL(D8, 0))) D8, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D9, 0))) D9, DBO.LX_POSITIVO_INT(SUM(ISNULL(D10, 0))) D10, DBO.LX_POSITIVO_INT(SUM(ISNULL(D11, 0))) D11, DBO.LX_POSITIVO_INT(SUM(ISNULL(D12, 0))) D12, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D13, 0))) D13, DBO.LX_POSITIVO_INT(SUM(ISNULL(D14, 0))) D14, DBO.LX_POSITIVO_INT(SUM(ISNULL(D15, 0))) D15, DBO.LX_POSITIVO_INT(SUM(ISNULL(D16, 0))) D16, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D17, 0))) D17, DBO.LX_POSITIVO_INT(SUM(ISNULL(D18, 0))) D18, DBO.LX_POSITIVO_INT(SUM(ISNULL(D19, 0))) D19, DBO.LX_POSITIVO_INT(SUM(ISNULL(D20, 0))) D20, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D21, 0))) D21, DBO.LX_POSITIVO_INT(SUM(ISNULL(D22, 0))) D22, DBO.LX_POSITIVO_INT(SUM(ISNULL(D23, 0))) D23, DBO.LX_POSITIVO_INT(SUM(ISNULL(D24, 0))) D24, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D25, 0))) D25, DBO.LX_POSITIVO_INT(SUM(ISNULL(D26, 0))) D26, DBO.LX_POSITIVO_INT(SUM(ISNULL(D27, 0))) D27, DBO.LX_POSITIVO_INT(SUM(ISNULL(D28, 0))) D28, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D29, 0))) D29, DBO.LX_POSITIVO_INT(SUM(ISNULL(D30, 0))) D30, DBO.LX_POSITIVO_INT(SUM(ISNULL(D31, 0))) D31, DBO.LX_POSITIVO_INT(SUM(ISNULL(D32, 0))) D32, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D33, 0))) D33, DBO.LX_POSITIVO_INT(SUM(ISNULL(D34, 0))) D34, DBO.LX_POSITIVO_INT(SUM(ISNULL(D35, 0))) D35, DBO.LX_POSITIVO_INT(SUM(ISNULL(D36, 0))) D36, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D37, 0))) D37, DBO.LX_POSITIVO_INT(SUM(ISNULL(D38, 0))) D38, DBO.LX_POSITIVO_INT(SUM(ISNULL(D39, 0))) D39, DBO.LX_POSITIVO_INT(SUM(ISNULL(D40, 0))) D40, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D41, 0))) D41, DBO.LX_POSITIVO_INT(SUM(ISNULL(D42, 0))) D42, DBO.LX_POSITIVO_INT(SUM(ISNULL(D43, 0))) D43, DBO.LX_POSITIVO_INT(SUM(ISNULL(D44, 0))) D44, '+
				' DBO.LX_POSITIVO_INT(SUM(ISNULL(D45, 0))) D45, DBO.LX_POSITIVO_INT(SUM(ISNULL(D46, 0))) D46, DBO.LX_POSITIVO_INT(SUM(ISNULL(D47, 0))) D47, DBO.LX_POSITIVO_INT(SUM(ISNULL(D48, 0))) D48 '+

				' FROM ( '

		/* ESTOQUE - RESERVADO */
		IF CHARINDEX('E', @DISPONIVEL) > 0
		BEGIN
			SELECT @SELECT1 =' SELECT ESTOQUE_PRODUTOS.COR_PRODUTO, '+
					 ' DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES1))  - SUM(ISNULL(E1,  0))) D1,  DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES2))  - SUM(ISNULL(E2,  0))) D2,  DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES3))  - SUM(ISNULL(E3,  0))) D3,  DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES4))  - SUM(ISNULL(E4,  0))) D4,  DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES5))  - SUM(ISNULL(E5,  0))) D5,  DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES6))  - SUM(ISNULL(E6,  0))) D6,  DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES7))  - SUM(ISNULL(E7,  0))) D7,  DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES8))  - SUM(ISNULL(E8,  0))) D8, '+
					 ' DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES9))  - SUM(ISNULL(E9,  0))) D9,  DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES10)) - SUM(ISNULL(E10, 0))) D10, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES11)) - SUM(ISNULL(E11, 0))) D11, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES12)) - SUM(ISNULL(E12, 0))) D12, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES13)) - SUM(ISNULL(E13, 0))) D13, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES14)) - SUM(ISNULL(E14, 0))) D14, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES15)) - SUM(ISNULL(E15, 0))) D15, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES16)) - SUM(ISNULL(E16, 0))) D16, '+
					 ' DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES17)) - SUM(ISNULL(E17, 0))) D17, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES18)) - SUM(ISNULL(E18, 0))) D18, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES19)) - SUM(ISNULL(E19, 0))) D19, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES20)) - SUM(ISNULL(E20, 0))) D20, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES21)) - SUM(ISNULL(E21, 0))) D21, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES22)) - SUM(ISNULL(E22, 0))) D22, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES23)) - SUM(ISNULL(E23, 0))) D23, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES24)) - SUM(ISNULL(E24, 0))) D24, '+
					 ' DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES25)) - SUM(ISNULL(E25, 0))) D25, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES26)) - SUM(ISNULL(E26, 0))) D26, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES27)) - SUM(ISNULL(E27, 0))) D27, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES28)) - SUM(ISNULL(E28, 0))) D28, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES29)) - SUM(ISNULL(E29, 0))) D29, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES30)) - SUM(ISNULL(E30, 0))) D30, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES31)) - SUM(ISNULL(E31, 0))) D31, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES32)) - SUM(ISNULL(E32, 0))) D32, '+
					 ' DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES33)) - SUM(ISNULL(E33, 0))) D33, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES34)) - SUM(ISNULL(E34, 0))) D34, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES35)) - SUM(ISNULL(E35, 0))) D35, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES36)) - SUM(ISNULL(E36, 0))) D36, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES37)) - SUM(ISNULL(E37, 0))) D37, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES38)) - SUM(ISNULL(E38, 0))) D38, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES39)) - SUM(ISNULL(E39, 0))) D39, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES40)) - SUM(ISNULL(E40, 0))) D40, '+
					 ' DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES41)) - SUM(ISNULL(E41, 0))) D41, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES42)) - SUM(ISNULL(E42, 0))) D42, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES43)) - SUM(ISNULL(E43, 0))) D43, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES44)) - SUM(ISNULL(E44, 0))) D44, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES45)) - SUM(ISNULL(E45, 0))) D45, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES46)) - SUM(ISNULL(E46, 0))) D46, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES47)) - SUM(ISNULL(E47, 0))) D47, DBO.LX_POSITIVO_INT(DBO.LX_POSITIVO_INT(AVG(ES48)) - SUM(ISNULL(E48, 0))) D48 '+
					 ' FROM ESTOQUE_PRODUTOS LEFT JOIN VENDAS_PROD_EMBALADO '+
					 ' ON ESTOQUE_PRODUTOS.PRODUTO = VENDAS_PROD_EMBALADO.PRODUTO '+
					 ' AND ESTOQUE_PRODUTOS.COR_PRODUTO = VENDAS_PROD_EMBALADO.COR_PRODUTO '+
					 ' AND ESTOQUE_PRODUTOS.FILIAL = VENDAS_PROD_EMBALADO.FILIAL '+
					 ' WHERE ESTOQUE_PRODUTOS.FILIAL = ' + @ASPAS + @FILIAL_DISPONIVEL + @ASPAS +
					 ' AND ESTOQUE_PRODUTOS.PRODUTO = ' + @ASPAS + @PRODUTO + @ASPAS +
					 ' GROUP BY ESTOQUE_PRODUTOS.PRODUTO, ESTOQUE_PRODUTOS.COR_PRODUTO, ESTOQUE_PRODUTOS.FILIAL '
		END
		ELSE
			SELECT @SELECT1 = ''
		
		/* COMPRAS */
		IF CHARINDEX('C', @DISPONIVEL) > 0
		BEGIN
			SELECT @SELECT2 = CASE WHEN ISNULL(@SELECT1, '') <> '' THEN ' UNION ALL ' ELSE '' END +
				'SELECT  COR_PRODUTO, '+
				' ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO1'  ELSE 'CE1'  END + '), 0) D1,  ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO2'  ELSE 'CE2'  END + '), 0) D2,  ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO3'  ELSE 'CE3'  END + '), 0) D3,  ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO4'  ELSE 'CE4'  END + '), 0) D4,  ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO5'  ELSE 'CE5'  END + '), 0) D5,  ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO6'  ELSE 'CE6'  END + '), 0) D6,  ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO7'  ELSE 'CE7'  END + '), 0) D7,  ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO8'  ELSE 'CE8'  END + '), 0) D8,  '+
				' ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO9'  ELSE 'CE9'  END + '), 0) D9,  ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO10' ELSE 'CE10' END + '), 0) D10, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO11' ELSE 'CE11' END + '), 0) D11, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO12' ELSE 'CE12' END + '), 0) D12, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO13' ELSE 'CE13' END + '), 0) D13, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO14' ELSE 'CE14' END + '), 0) D14, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO15' ELSE 'CE15' END + '), 0) D15, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO16' ELSE 'CE16' END + '), 0) D16, '+
				' ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO17' ELSE 'CE17' END + '), 0) D17, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO18' ELSE 'CE18' END + '), 0) D18, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO19' ELSE 'CE19' END + '), 0) D19, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO20' ELSE 'CE20' END + '), 0) D20, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO21' ELSE 'CE21' END + '), 0) D21, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO22' ELSE 'CE22' END + '), 0) D22, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO23' ELSE 'CE23' END + '), 0) D23, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO24' ELSE 'CE24' END + '), 0) D24, '+
				' ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO25' ELSE 'CE25' END + '), 0) D25, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO26' ELSE 'CE26' END + '), 0) D26, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO27' ELSE 'CE27' END + '), 0) D27, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO28' ELSE 'CE28' END + '), 0) D28, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO29' ELSE 'CE29' END + '), 0) D29, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO30' ELSE 'CE30' END + '), 0) D30, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO31' ELSE 'CE31' END + '), 0) D31, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO32' ELSE 'CE32' END + '), 0) D32, '+
				' ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO33' ELSE 'CE33' END + '), 0) D33, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO34' ELSE 'CE34' END + '), 0) D34, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO35' ELSE 'CE35' END + '), 0) D35, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO36' ELSE 'CE36' END + '), 0) D36, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO37' ELSE 'CE37' END + '), 0) D37, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO38' ELSE 'CE38' END + '), 0) D38, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO39' ELSE 'CE39' END + '), 0) D39, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO40' ELSE 'CE40' END + '), 0) D40, '+
				' ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO41' ELSE 'CE41' END + '), 0) D41, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO42' ELSE 'CE42' END + '), 0) D42, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO43' ELSE 'CE43' END + '), 0) D43, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO44' ELSE 'CE44' END + '), 0) D44, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO45' ELSE 'CE45' END + '), 0) D45, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO46' ELSE 'CE46' END + '), 0) D46, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO47' ELSE 'CE47' END + '), 0) D47, ISNULL(SUM(' + CASE WHEN @TIPO_DISPONIVEL = 1 THEN 'CO48' ELSE 'CE48' END + '), 0) D48 ' 

			SELECT @SELECT3 = 'FROM COMPRAS A JOIN COMPRAS_PRODUTO B ON A.PEDIDO = B.PEDIDO WHERE A.PEDIDO = '+ @ASPAS + @PEDIDO + @ASPAS + ' AND PRODUTO = ' + @ASPAS + @PRODUTO + @ASPAS + ' GROUP BY  COR_PRODUTO '
		END
		ELSE
			SELECT @SELECT2 = '', @SELECT3 = ''

--		select @SELECT,  @SELECT1 , @SELECT2 , @SELECT3 , ' ) A GROUP BY COR_PRODUTO '
		INSERT INTO #TMP_ESTOQUE_DISTRIBUICAO EXECUTE (@SELECT + @SELECT1 + @SELECT2 + @SELECT3 + ' ) A GROUP BY COR_PRODUTO ')

		/* ATUALIZA PARA % DO DISPONÍVEL QUE SERÁ UTILIZADO */
		UPDATE #TMP_ESTOQUE_DISTRIBUICAO
			SET	D1  = ((D1  * @PORCENTAGEM) / 100), D2  = ((D2  * @PORCENTAGEM) / 100), D3  = ((D3  * @PORCENTAGEM) / 100), D4  = ((D4  * @PORCENTAGEM) / 100), D5  = ((D5  * @PORCENTAGEM) / 100), D6  = ((D6  * @PORCENTAGEM) / 100), D7  = ((D7  * @PORCENTAGEM) / 100), D8  = ((D8  * @PORCENTAGEM) / 100), D9  = ((D9  * @PORCENTAGEM) / 100), D10 = ((D10 * @PORCENTAGEM) / 100), D11 = ((D11 * @PORCENTAGEM) / 100), D12 = ((D12 * @PORCENTAGEM) / 100),
				D13 = ((D13 * @PORCENTAGEM) / 100), D14 = ((D14 * @PORCENTAGEM) / 100), D15 = ((D15 * @PORCENTAGEM) / 100), D16 = ((D16 * @PORCENTAGEM) / 100), D17 = ((D17 * @PORCENTAGEM) / 100), D18 = ((D18 * @PORCENTAGEM) / 100), D19 = ((D19 * @PORCENTAGEM) / 100), D20 = ((D20 * @PORCENTAGEM) / 100), D21 = ((D21 * @PORCENTAGEM) / 100), D22 = ((D22 * @PORCENTAGEM) / 100), D23 = ((D23 * @PORCENTAGEM) / 100), D24 = ((D24 * @PORCENTAGEM) / 100),
				D25 = ((D25 * @PORCENTAGEM) / 100), D26 = ((D26 * @PORCENTAGEM) / 100), D27 = ((D27 * @PORCENTAGEM) / 100), D28 = ((D28 * @PORCENTAGEM) / 100), D29 = ((D29 * @PORCENTAGEM) / 100), D30 = ((D30 * @PORCENTAGEM) / 100), D31 = ((D31 * @PORCENTAGEM) / 100), D32 = ((D32 * @PORCENTAGEM) / 100), D33 = ((D33 * @PORCENTAGEM) / 100), D34 = ((D34 * @PORCENTAGEM) / 100), D35 = ((D35 * @PORCENTAGEM) / 100), D36 = ((D36 * @PORCENTAGEM) / 100),
				D37 = ((D37 * @PORCENTAGEM) / 100), D38 = ((D38 * @PORCENTAGEM) / 100), D39 = ((D39 * @PORCENTAGEM) / 100), D40 = ((D40 * @PORCENTAGEM) / 100), D41 = ((D41 * @PORCENTAGEM) / 100), D42 = ((D42 * @PORCENTAGEM) / 100), D43 = ((D43 * @PORCENTAGEM) / 100), D44 = ((D44 * @PORCENTAGEM) / 100), D45 = ((D45 * @PORCENTAGEM) / 100), D46 = ((D46 * @PORCENTAGEM) / 100), D47 = ((D47 * @PORCENTAGEM) / 100), D48 = ((D48 * @PORCENTAGEM) / 100)
		
		/* VERIFICA QTDE DE PACKS POR COR DISPONIVEL */
		DECLARE CUR_QTDE_PACKS CURSOR FOR SELECT COR_PRODUTO, D1, D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23, D24, D25, D26, D27, D28, D29, D30, D31, D32, D33, D34, D35, D36, D37, D38, D39, D40, D41, D42, D43, D44, D45, D46, D47, D48 FROM #TMP_ESTOQUE_DISTRIBUICAO WHERE COR_PRODUTO = @COR_PRODUTO
		OPEN CUR_QTDE_PACKS
		SELECT @QTDE_ES = 0, @LOOP = 0, @CONTROLE = 0
		FETCH NEXT FROM CUR_QTDE_PACKS INTO @COR_PACK, @D1, @D2, @D3, @D4, @D5, @D6, @D7, @D8, @D9, @D10, @D11, @D12, @D13, @D14, @D15, @D16, @D17, @D18, @D19, @D20, @D21, @D22, @D23, @D24, @D25, @D26, @D27, @D28, @D29, @D30, @D31, @D32, @D33, @D34, @D35, @D36, @D37, @D38, @D39, @D40, @D41, @D42, @D43, @D44, @D45, @D46, @D47, @D48
		WHILE @@FETCH_STATUS = 0
		BEGIN

			SELECT 	@P1  = Q1,  @P2  = Q2,  @P3  = Q3,  @P4  = Q4,  @P5  = Q5,  @P6  = Q6,  @P7  = Q7,  @P8  = Q8,  @P9  = Q9,  @P10 = Q10, @P11 = Q11, @P12 = Q12, @P13 = Q13, @P14 = Q14, @P15 = Q15, @P16 = Q16, @P17 = Q17, @P18 = Q18, @P19 = Q19, @P20 = Q20, @P21 = Q21, @P22 = Q22, @P23 = Q23, @P24 = Q24,
				@P25 = Q25, @P26 = Q26, @P27 = Q27, @P28 = Q28, @P29 = Q29, @P30 = Q30, @P31 = Q31, @P32 = Q32, @P33 = Q33, @P34 = Q34, @P35 = Q35, @P36 = Q36,	@P37 = Q37, @P38 = Q38, @P39 = Q39, @P40 = Q40, @P41 = Q41, @P42 = Q42, @P43 = Q43, @P44 = Q44, @P45 = Q45, @P46 = Q46, @P47 = Q47, @P48 = Q48
				FROM PRODUTOS_PACKS_PERMITIDOS WHERE PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PACK AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK

			/* VERIFICA QTDE DE PACKS DISPONIVEIS */
			SELECT 	@CONTADOR = 1, @QTDE_D = 0, @QTDE_ES = 0, @LOOP = 0,
				@D1  = CASE WHEN @P1  = 0 THEN 0 ELSE @D1  / @P1  END, @D2  = CASE WHEN @P2  = 0 THEN 0 ELSE @D2  / @P2  END, @D3  = CASE WHEN @P3  = 0 THEN 0 ELSE @D3  / @P3  END, @D4  = CASE WHEN @P4  = 0 THEN 0 ELSE @D4  / @P4  END, @D5  = CASE WHEN @P5  = 0 THEN 0 ELSE @D5  / @P5  END, @D6  = CASE WHEN @P6  = 0 THEN 0 ELSE @D6  / @P6  END, @D7  = CASE WHEN @P7  = 0 THEN 0 ELSE @D7  / @P7  END, @D8  = CASE WHEN @P8  = 0 THEN 0 ELSE @D8  / @P8  END, @D9  = CASE WHEN @P9  = 0 THEN 0 ELSE @D9  / @P9  END, @D10 = CASE WHEN @P10 = 0 THEN 0 ELSE @D10 / @P10 END, @D11 = CASE WHEN @P11 = 0 THEN 0 ELSE @D11 / @P11 END, @D12 = CASE WHEN @P12 = 0 THEN 0 ELSE @D12 / @P12 END, @D13 = CASE WHEN @P13 = 0 THEN 0 ELSE @D13 / @P13 END, @D14 = CASE WHEN @P14 = 0 THEN 0 ELSE @D14 / @P14 END, @D15 = CASE WHEN @P15 = 0 THEN 0 ELSE @D15 / @P15 END, @D16 = CASE WHEN @P16 = 0 THEN 0 ELSE @D16 / @P16 END, @D17 = CASE WHEN @P17 = 0 THEN 0 ELSE @D17 / @P17 END, @D18 = CASE WHEN @P18 = 0 THEN 0 ELSE @D18 / @P18 END, @D19 = CASE WHEN @P19 = 0 THEN 0 ELSE @D19 / @P19 END, @D20 = CASE WHEN @P20 = 0 THEN 0 ELSE @D20 / @P20 END, @D21 = CASE WHEN @P21 = 0 THEN 0 ELSE @D21 / @P21 END, @D22 = CASE WHEN @P22 = 0 THEN 0 ELSE @D22 / @P22 END, @D23 = CASE WHEN @P23 = 0 THEN 0 ELSE @D23 / @P23 END, @D24 = CASE WHEN @P24 = 0 THEN 0 ELSE @D24 / @P24 END,
				@D25 = CASE WHEN @P25 = 0 THEN 0 ELSE @D25 / @P25 END, @D26 = CASE WHEN @P26 = 0 THEN 0 ELSE @D26 / @P26 END, @D27 = CASE WHEN @P27 = 0 THEN 0 ELSE @D27 / @P27 END, @D28 = CASE WHEN @P28 = 0 THEN 0 ELSE @D28 / @P28 END, @D29 = CASE WHEN @P29 = 0 THEN 0 ELSE @D29 / @P29 END, @D30 = CASE WHEN @P30 = 0 THEN 0 ELSE @D30 / @P30 END, @D31 = CASE WHEN @P31 = 0 THEN 0 ELSE @D31 / @P31 END, @D32 = CASE WHEN @P32 = 0 THEN 0 ELSE @D32 / @P32 END, @D33 = CASE WHEN @P33 = 0 THEN 0 ELSE @D33 / @P33 END, @D34 = CASE WHEN @P34 = 0 THEN 0 ELSE @D34 / @P34 END, @D35 = CASE WHEN @P35 = 0 THEN 0 ELSE @D35 / @P35 END, @D36 = CASE WHEN @P36 = 0 THEN 0 ELSE @D36 / @P36 END, @D37 = CASE WHEN @P37 = 0 THEN 0 ELSE @D37 / @P37 END, @D38 = CASE WHEN @P38 = 0 THEN 0 ELSE @D38 / @P38 END, @D39 = CASE WHEN @P39 = 0 THEN 0 ELSE @D39 / @P39 END, @D40 = CASE WHEN @P40 = 0 THEN 0 ELSE @D40 / @P40 END, @D41 = CASE WHEN @P41 = 0 THEN 0 ELSE @D41 / @P41 END, @D42 = CASE WHEN @P42 = 0 THEN 0 ELSE @D42 / @P42 END, @D43 = CASE WHEN @P43 = 0 THEN 0 ELSE @D43 / @P43 END, @D44 = CASE WHEN @P44 = 0 THEN 0 ELSE @D44 / @P44 END, @D45 = CASE WHEN @P45 = 0 THEN 0 ELSE @D45 / @P45 END, @D46 = CASE WHEN @P46 = 0 THEN 0 ELSE @D46 / @P46 END, @D47 = CASE WHEN @P47 = 0 THEN 0 ELSE @D47 / @P47 END, @D48 = CASE WHEN @P48 = 0 THEN 0 ELSE @D48 / @P48 END

			SELECT @CONTADOR = 1, @LOOP = @LOOP + 1
			WHILE @CONTADOR <= @NUMERO_TAMANHOS
			BEGIN
				SELECT @QTDE_D  = CASE @CONTADOR
				WHEN 1  THEN @D1  WHEN 2  THEN @D2  WHEN 3  THEN @D3  WHEN 4  THEN @D4  WHEN 5  THEN @D5  WHEN 6  THEN @D6  WHEN 7  THEN @D7  WHEN 8  THEN @D8  WHEN 9  THEN @D9  WHEN 10 THEN @D10 WHEN 11 THEN @D11 WHEN 12 THEN @D12 WHEN 13 THEN @D13 WHEN 14 THEN @D14 WHEN 15 THEN @D15 WHEN 16 THEN @D16 WHEN 17 THEN @D17 WHEN 18 THEN @D18 WHEN 19 THEN @D19 WHEN 20 THEN @D20 WHEN 21 THEN @D21 WHEN 22 THEN @D22 WHEN 23 THEN @D23 WHEN 24 THEN @D24
				WHEN 25 THEN @D25 WHEN 26 THEN @D26 WHEN 27 THEN @D27 WHEN 28 THEN @D28 WHEN 29 THEN @D29 WHEN 30 THEN @D30 WHEN 31 THEN @D31 WHEN 32 THEN @D32 WHEN 33 THEN @D33 WHEN 34 THEN @D34 WHEN 35 THEN @D35 WHEN 36 THEN @D36 WHEN 37 THEN @D37 WHEN 38 THEN @D38 WHEN 39 THEN @D39 WHEN 40 THEN @D40 WHEN 41 THEN @D41 WHEN 42 THEN @D42 WHEN 43 THEN @D43 WHEN 44 THEN @D44 WHEN 45 THEN @D45 WHEN 46 THEN @D46 WHEN 47 THEN @D47 WHEN 48 THEN @D48 END

				SELECT @QTDE_P = CASE @CONTADOR
				WHEN 1  THEN @P1  WHEN 2  THEN @P2  WHEN 3  THEN @P3  WHEN 4  THEN @P4  WHEN 5  THEN @P5  WHEN 6  THEN @P6  WHEN 7  THEN @P7  WHEN 8  THEN @P8  WHEN 9  THEN @P9  WHEN 10 THEN @P10 WHEN 11 THEN @P11 WHEN 12 THEN @P12 WHEN 13 THEN @P13 WHEN 14 THEN @P14 WHEN 15 THEN @P15 WHEN 16 THEN @P16 WHEN 17 THEN @P17 WHEN 18 THEN @P18 WHEN 19 THEN @P19 WHEN 20 THEN @P20 WHEN 21 THEN @P21 WHEN 22 THEN @P22 WHEN 23 THEN @P23 WHEN 24 THEN @P24
				WHEN 25 THEN @P25 WHEN 26 THEN @P26 WHEN 27 THEN @P27 WHEN 28 THEN @P28 WHEN 29 THEN @P29 WHEN 30 THEN @P30 WHEN 31 THEN @P31 WHEN 32 THEN @P32 WHEN 33 THEN @P33 WHEN 34 THEN @P34 WHEN 35 THEN @P35 WHEN 36 THEN @P36 WHEN 37 THEN @P37 WHEN 38 THEN @P38 WHEN 39 THEN @P39 WHEN 40 THEN @P40 WHEN 41 THEN @P41 WHEN 42 THEN @P42 WHEN 43 THEN @P43 WHEN 44 THEN @P44 WHEN 45 THEN @P45 WHEN 46 THEN @P46 WHEN 47 THEN @P47 WHEN 48 THEN @P48 END
		
				IF (@QTDE_ES > @QTDE_D AND (@QTDE_D > 0 AND @QTDE_P > 0)) OR (@QTDE_D = 0 AND @QTDE_P > 0) OR (@CONTADOR = 1 AND @QTDE_ES = 0 AND @LOOP = 1) OR @CONTROLE = 0
					SELECT @QTDE_ES = @QTDE_D

				SELECT @CONTADOR = @CONTADOR + 1, @CONTROLE = @CONTROLE + CASE WHEN @QTDE_P > 0 THEN 1 ELSE 0 END
			END
			FETCH NEXT FROM CUR_QTDE_PACKS INTO @COR_PACK, @D1, @D2, @D3, @D4, @D5, @D6, @D7, @D8, @D9, @D10, @D11, @D12, @D13, @D14, @D15, @D16, @D17, @D18, @D19, @D20, @D21, @D22, @D23, @D24, @D25, @D26, @D27, @D28, @D29, @D30, @D31, @D32, @D33, @D34, @D35, @D36, @D37, @D38, @D39, @D40, @D41, @D42, @D43, @D44, @D45, @D46, @D47, @D48
		END
		CLOSE CUR_QTDE_PACKS
		DEALLOCATE CUR_QTDE_PACKS
		SELECT @QTDE_D = @QTDE_ES

		/* SE DISPONIVEL = 0 (ZERO) */
		IF @QTDE_D = 0
		BEGIN
			SELECT @STATUS = 'F'
			UPDATE ROMANEIOS_PRODUTO SET STATUS = @STATUS, FILTROS_PROCESSO = 'PROCESSO AUTOMÁTICO DE DISTRIBUIÇÃO.'
				WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
			--SELECT @PRODUTO_ATUAL = @PRODUTO, @COR_PRODUTO_ATUAL = @COR_PRODUTO
			--FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
			--WHILE @PRODUTO_ATUAL = @PRODUTO AND @COR_PRODUTO_ATUAL = @COR_PRODUTO AND @@FETCH_STATUS = 0
				FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
			CONTINUE
		END

		/* VERIFICA SE TODOS OS ITENS DO PACK (PRODUTO + COR) ESTÃO NA TABELA ROMANEIOS_PRODUTO */
		SELECT @CONTADOR = COUNT(*) FROM #TMP_ESTOQUE_DISTRIBUICAO
		SELECT @QTDE_ES = COUNT(*) 
			FROM #TMP_ESTOQUE_DISTRIBUICAO 
				JOIN ROMANEIOS_PRODUTO ON #TMP_ESTOQUE_DISTRIBUICAO.COR_PRODUTO = ROMANEIOS_PRODUTO.COR_PRODUTO AND ROMANEIOS_PRODUTO.PRODUTO = @PRODUTO
			WHERE ROMANEIOS_PRODUTO.ROMANEIO = @ROMANEIO AND ROMANEIOS_PRODUTO.FILIAL = @FILIAL

		IF @QTDE_ES <> @CONTADOR
		BEGIN
			SELECT @STATUS = 'C'
			UPDATE ROMANEIOS_PRODUTO SET STATUS = @STATUS, FILTROS_PROCESSO = 'PROCESSO AUTOMÁTICO DE DISTRIBUIÇÃO.'
				WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
			--SELECT @PRODUTO_ATUAL = @PRODUTO, @COR_PRODUTO_ATUAL = @COR_PRODUTO
			--FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
			--WHILE @PRODUTO_ATUAL = @PRODUTO AND @COR_PRODUTO_ATUAL = @COR_PRODUTO AND @@FETCH_STATUS = 0
				FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
			CONTINUE
		END
		SELECT @QTDE_ES = @QTDE_D

		/* LOJAS / CLIENTES */		
		DECLARE CURSOR_ITENS SCROLL CURSOR FOR
			SELECT DISTINCT F.CLIENTE_ATACADO, C.PORCENTAGEM_QTDE, PRIORIDADE, F.TRANSP_REDESPACHO, ISNULL(F.TRANSPORTADORA, @TRANSPORTADORA) AS TRANSPORTADORA_CLIENTE
				FROM ROMANEIOS_PRODUTO A 
					JOIN GIV_DISTRIBUICAO_PORCENTAGEM C ON C.COD_PLANEJAMENTO = @COD_PLANEJAMENTO AND C.COD_AGRUPAMENTO = @COD_AGRUPAMENTO
					JOIN GIV_AGRUPAMENTO_PRODUTO D ON C.COD_AGRUPAMENTO = D.COD_AGRUPAMENTO AND C.ID_AGRUPAMENTO = D.ID_AGRUPAMENTO AND A.PRODUTO = D.PRODUTO
					JOIN GIV_AGRUPAMENTO E ON D.COD_AGRUPAMENTO = E.COD_AGRUPAMENTO AND D.ID_AGRUPAMENTO = E.ID_AGRUPAMENTO AND E.AGRUPAMENTO_DISTRIBUICAO = 1
					JOIN CLIENTES_ATACADO F ON C.COD_CLIFOR = F.COD_CLIENTE
				WHERE A.ROMANEIO = @ROMANEIO AND A.FILIAL = @FILIAL AND A.PRODUTO = @PRODUTO --AND A.COR_PRODUTO = @COR_PRODUTO
				AND (@UTILIZAR_GRADE_MINIMA = 1 OR C.PORCENTAGEM_QTDE > 0)
				ORDER BY F.PRIORIDADE , C.PORCENTAGEM_QTDE DESC
		OPEN CURSOR_ITENS
		FETCH NEXT FROM CURSOR_ITENS INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
		/* SE NÃO ENCONTROU CLIENTES / LOJAS */
		IF @@FETCH_STATUS <> 0
		BEGIN
			CLOSE CURSOR_ITENS
			DEALLOCATE CURSOR_ITENS
			SELECT @STATUS = 'D'
			UPDATE ROMANEIOS_PRODUTO SET STATUS = @STATUS, FILTROS_PROCESSO = 'PROCESSO AUTOMÁTICO DE DISTRIBUIÇÃO.'
				WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
			--SELECT @PRODUTO_ATUAL = @PRODUTO, @COR_PRODUTO_ATUAL = @COR_PRODUTO
			--FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
			--WHILE @PRODUTO_ATUAL = @PRODUTO AND @COR_PRODUTO_ATUAL = @COR_PRODUTO AND @@FETCH_STATUS = 0
				FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
			CONTINUE
		END


		/*AJUSTANDO GRADE MÍNIMA*/
		IF @UTILIZAR_GRADE_MINIMA = 1
		BEGIN

			FETCH LAST FROM CURSOR_ITENS  INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
			SELECT @QTDE_FILIAIS = @@CURSOR_ROWS
			FETCH FIRST  FROM CURSOR_ITENS  INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
	
			SELECT @GRADE_MINIMA = 1 --UM PACK INDICA A GRADE MÍNIMA
			SELECT 	@QTDE_ES = (@QTDE_ES - @QTDE_FILIAIS*@GRADE_MINIMA)

			IF (@QTDE_ES < 0) 
			BEGIN		
				SELECT  @ERRNO  = 30002, @ERRMSG = 'A grade mínima não foi atingida. Verifique !!!'
				GOTO ERROR
			END
			
		END
		/*------------*/


		WHILE @@FETCH_STATUS = 0
		BEGIN
			SELECT @QTDE_P = ROUND((@QTDE_ES * @PORCENTAGEM_QTDE / 100), 0)
			--AJUSTANDO GRADE MÍNIMA
			IF @UTILIZAR_GRADE_MINIMA = 1
				SELECT  @QTDE_P = @QTDE_P + @GRADE_MINIMA
			SELECT @QTDE_P = CASE WHEN @QTDE_P > @QTDE_D THEN @QTDE_D ELSE @QTDE_P END
			SELECT @QTDE_D = @QTDE_D - @QTDE_P

			/* SE NÃO POSSUI QTDE E NÃO MANTEM ITEM ZERADO*/
			IF @MANTER_ITEM_ZERADO = 0 AND @QTDE_P = 0
			BEGIN
				FETCH NEXT FROM CURSOR_ITENS INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
				CONTINUE
			END

			/* PEDIDO DE VENDA */
			SELECT @PEDIDO_VENDA = NULL, @CODIGO_TAB_PRECO = @TAB_PRECO, @PRECO1 = 0, @PRECO2 = 0, @PRECO3 = 0, @PRECO4 = 0, @DESCONTO_ITEM_VENDA = 0

			/* TABELA DE PRECO */
			IF @TAB_PRECO_CLIENTE = 1
			BEGIN
				SELECT @CODIGO_TAB_PRECO = CODIGO_TAB_PRECO 
					FROM CLIENTES_ATACADO 
					WHERE CLIENTE_ATACADO = @CLIENTE_ATACADO
				IF ISNULL(@CODIGO_TAB_PRECO, '') = ''
					SET @CODIGO_TAB_PRECO = @TAB_PRECO
			END
				
			SELECT @PEDIDO_VENDA = PEDIDO 
				FROM VENDAS
				WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND CLIENTE_ATACADO = @CLIENTE_ATACADO

			IF @PEDIDO_VENDA IS NULL OR @@ROWCOUNT = 0
			BEGIN
				/* INCLUI NOVO PEDIDO */
				EXEC LX_SEQUENCIAL 'VENDAS.PEDIDO', NULL, @PEDIDO_VENDA OUTPUT
				INSERT INTO VENDAS
					(PEDIDO, ROMANEIO, COLECAO, CODIGO_TAB_PRECO, TIPO, CONDICAO_PGTO, FILIAL, CLIENTE_ATACADO, NOME_CLIFOR_ENTREGA, TRANSPORTADORA, MOEDA, REPRESENTANTE, GERENTE, COMISSAO, COMISSAO_GERENTE, PORCENTAGEM_ACERTO, EMISSAO, CADASTRAMENTO, TOT_QTDE_ORIGINAL, TOT_QTDE_ENTREGAR, TOT_VALOR_ORIGINAL, TOT_VALOR_ENTREGAR, DESCONTO, ENCARGO, DESCONTO_COND_PGTO, VALOR_IPI, TABELA_FILHA, OBS, APROVACAO, DESCONTO_SOBRE_1, DESCONTO_SOBRE_2, DESCONTO_SOBRE_3, DESCONTO_SOBRE_4, PORC_DESCONTO_DIGITADO, PORC_DESCONTO, PORC_DESCONTO_COND_PGTO, PORC_ENCARGO, ACEITA_PECAS_PEQUENAS, ACEITA_PECAS_COM_CORTE, INDICADOR_VENDA, FILIAL_DIGITACAO  , TIPO_CAIXA, TIPO_FRETE, ENTREGA_CIF, TRANSP_REDESPACHO )
				VALUES  (@PEDIDO_VENDA, @ROMANEIO, @COLECAO, @CODIGO_TAB_PRECO, @TIPO_VENDA, @COND_PGTO, @FILIAL, @CLIENTE_ATACADO, @CLIENTE_ATACADO, CASE WHEN @UITILIZA_TRANSP_CLIENTE=1 THEN @TRANSPORTADORA_CLIENTE ELSE @TRANSPORTADORA END, @MOEDA, @REPRESENTANTE, @GERENTE, @COMISSAO, @COMISSAO_GERENTE, @PORCENTAGEM_ACERTO, CONVERT(VARCHAR(8), GETDATE(), 112), CONVERT(VARCHAR(8), GETDATE(), 112), 0, 0, 0,0,0,0,0,0, 'VENDAS_PRODUTO', 'PEDIDO GERADO PELO PROCESSO DE DISTRIBUIÇÃO. ROMANEIO NO. ' + @ROMANEIO, 'E', 0,0,0,0, 1, 0, @DESCONTO_COND_PGTO, @ENCARGO, 100, 100, 'D', @FILIAL, @TIPO_CAIXA, @TIPO_FRETE, @ENTREGA_CIF, CASE WHEN @UITILIZA_TRANSP_CLIENTE=1 THEN @TRANSP_REDESPACHO ELSE @TRANSPORTADORA END)
				IF @@ROWCOUNT = 0
				BEGIN
					SELECT @ERRNO = 30002, @ERRMSG = 'PROBLEMA NO INSERT EM VENDAS !'
					GOTO ERROR
				END
			END
			ELSE
			BEGIN
				IF EXISTS(SELECT * FROM VENDAS WHERE PEDIDO = @PEDIDO_VENDA AND (PORC_DESCONTO_COND_PGTO <> @DESCONTO_COND_PGTO OR PORC_ENCARGO <> @ENCARGO OR CONDICAO_PGTO <> @COND_PGTO OR CODIGO_TAB_PRECO <> @CODIGO_TAB_PRECO))
				BEGIN
					UPDATE VENDAS SET PORC_DESCONTO_COND_PGTO = @DESCONTO_COND_PGTO, PORC_ENCARGO = @ENCARGO, CONDICAO_PGTO = @COND_PGTO, CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO
						WHERE PEDIDO = @PEDIDO_VENDA
					IF @@ROWCOUNT = 0
					BEGIN
						SELECT @ERRNO = 30002, @ERRMSG = 'PROBLEMA NO UPDATE EM VENDAS !'
						GOTO ERROR
					END
				END
			END

			/* VERIFICA SE EXISTE O PRODUTO NO PEDIDO DE VENDAS */
			/* SE EXISTE APAGA */
			IF EXISTS (SELECT * FROM VENDAS_PRODUTO WHERE PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO)
				DELETE FROM VENDAS_PRODUTO WHERE PEDIDO = @PEDIDO_VENDA AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO

			/* EXCLUI REGISTROS EM ROMANEIOS_RESERVAS */
			IF EXISTS (SELECT * FROM ROMANEIOS_RESERVAS WHERE PRODUTO = @PRODUTO AND ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PEDIDO = @PEDIDO_VENDA AND COR_PRODUTO = @COR_PRODUTO )
				DELETE FROM ROMANEIOS_RESERVAS WHERE PRODUTO = @PRODUTO AND ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PEDIDO = @PEDIDO_VENDA AND COR_PRODUTO = @COR_PRODUTO
			
			/* SE VARIA PREÇO POR COR */
			/*IF @VARIA_PRECO_COR = 1
			BEGIN
				DECLARE CURSOR_PACK CURSOR FOR 
					SELECT COR_PRODUTO 
						FROM PRODUTOS_PACKS_PERMITIDOS
						WHERE PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND COR_PRODUTO = @COR_PRODUTO
				OPEN CURSOR_PACK
				FETCH NEXT FROM CURSOR_PACK INTO @COR_PACK
				WHILE @@FETCH_STATUS = 0
				BEGIN
					SELECT @PRECO1 = PRECO1, @PRECO2 = PRECO2, @PRECO3 = PRECO3, @PRECO4 = PRECO4
						FROM PRODUTOS_PRECO_COR
						WHERE CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PACK
	
					/* SE POSSUI DESCONTO/ENCARGO NO ITEM */
					IF @DESCONTO_ITEM <> 0
					BEGIN
						IF @INCIDE_SOBRE_PRECO = 1
							SELECT 	@PRECO1 = (@PRECO1 - ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)),
								@PRECO2 = (@PRECO2 - ROUND(@PRECO2 * (@DESCONTO_ITEM / 100), 2)),
								@PRECO3 = (@PRECO3 - ROUND(@PRECO3 * (@DESCONTO_ITEM / 100), 2)),
								@PRECO4 = (@PRECO4 - ROUND(@PRECO4 * (@DESCONTO_ITEM / 100), 2))
						ELSE
						BEGIN
							IF @VARIA_PRECO_TAM = 0
								SELECT @DESCONTO_ITEM_VENDA = ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)
							ELSE
							BEGIN
								SELECT 	@CONTADOR = 0
								SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO1 > 0 THEN (@PRECO1 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
									@CONTADOR = @CONTADOR + CASE WHEN @PRECO1 > 0 THEN 1 ELSE 0 END
								SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO2 > 0 THEN (@PRECO2 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
									@CONTADOR = @CONTADOR + CASE WHEN @PRECO2 > 0 THEN 1 ELSE 0 END
								SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO3 > 0 THEN (@PRECO3 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
									@CONTADOR = @CONTADOR + CASE WHEN @PRECO3 > 0 THEN 1 ELSE 0 END
								SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO4 > 0 THEN (@PRECO4 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
									@CONTADOR = @CONTADOR + CASE WHEN @PRECO4 > 0 THEN 1 ELSE 0 END
								SELECT @DESCONTO_ITEM_VENDA = ROUND(@DESCONTO_ITEM_VENDA / CASE WHEN @CONTADOR = 0 THEN 1 ELSE @CONTADOR END, 2)
							END
						END
					END
	
					/* VENDAS_PRODUTO */
					INSERT INTO VENDAS_PRODUTO
						(PEDIDO, PRODUTO, COR_PRODUTO, ENTREGA, ITEM_PEDIDO, LIMITE_ENTREGA, QTDE_ORIGINAL, QTDE_ENTREGAR, PRECO1, PRECO2, PRECO3, PRECO4, DESCONTO_ITEM, PACKS, VO1,  VO2,  VO3,  VO4,  VO5,  VO6,  VO7,  VO8,  VO9,  VO10, VO11, VO12, VO13, VO14, VO15, VO16, VO17, VO18, VO19, VO20, VO21, VO22, VO23, VO24, VO25, VO26, VO27, VO28, VO29, VO30, VO31, VO32, VO33, VO34, VO35, VO36, VO37, VO38, VO39, VO40, VO41, VO42, VO43, VO44, VO45, VO46, VO47, VO48)
					SELECT 	@PEDIDO_VENDA, A.PRODUTO, A.COR_PRODUTO, @DATA, '0000', @DATA, (QTDE * @QTDE_P), (QTDE * @QTDE_P), @PRECO1, @PRECO2, @PRECO3, @PRECO4, @DESCONTO_ITEM_VENDA, DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' '),
						(Q1  * @QTDE_P), (Q2  * @QTDE_P), (Q3  * @QTDE_P), (Q4  * @QTDE_P), (Q5  * @QTDE_P), (Q6  * @QTDE_P), (Q7  * @QTDE_P), (Q8  * @QTDE_P), (Q9  * @QTDE_P), (Q10 * @QTDE_P), (Q11 * @QTDE_P), (Q12 * @QTDE_P), (Q13 * @QTDE_P), (Q14 * @QTDE_P), (Q15 * @QTDE_P), (Q16 * @QTDE_P), (Q17 * @QTDE_P), (Q18 * @QTDE_P), (Q19 * @QTDE_P), (Q20 * @QTDE_P), (Q21 * @QTDE_P), (Q22 * @QTDE_P), (Q23 * @QTDE_P), (Q24 * @QTDE_P), 
						(Q25 * @QTDE_P), (Q26 * @QTDE_P), (Q27 * @QTDE_P), (Q28 * @QTDE_P), (Q29 * @QTDE_P), (Q30 * @QTDE_P), (Q31 * @QTDE_P), (Q32 * @QTDE_P), (Q33 * @QTDE_P), (Q34 * @QTDE_P), (Q35 * @QTDE_P), (Q36 * @QTDE_P), (Q37 * @QTDE_P), (Q38 * @QTDE_P), (Q39 * @QTDE_P), (Q40 * @QTDE_P), (Q41 * @QTDE_P), (Q42 * @QTDE_P), (Q43 * @QTDE_P), (Q44 * @QTDE_P), (Q45 * @QTDE_P), (Q46 * @QTDE_P), (Q47 * @QTDE_P), (Q48 * @QTDE_P) 
						FROM PRODUTOS_PACKS_PERMITIDOS A 
							JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO
						WHERE A.PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND A.COR_PRODUTO = @COR_PRODUTO

					/* ROMANEIOS_RESERVAS */				
					INSERT INTO ROMANEIOS_RESERVAS 
						(ROMANEIO, FILIAL, PEDIDO, PRODUTO, COR_PRODUTO, COR_PEDIDO, ENTREGA, ITEM_PEDIDO, QTDE_R, VALOR_R, PACKS, 
						R1,  R2,  R3,  R4,  R5,  R6,  R7,  R8,  R9,  R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R22, R23, R24,
						R25, R26, R27, R28, R29, R30, R31, R32, R33, R34, R35, R36, R37, R38, R39, R40 ,R41, R42, R43, R44, R45, R46, R47, R48)
					SELECT 	@ROMANEIO, @FILIAL, @PEDIDO_VENDA, A.PRODUTO, A.COR_PRODUTO, A.COR_PRODUTO, @DATA, '0000', (QTDE * @QTDE_P),
							(Q1  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 1,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q2  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 2,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q3  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 3,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q4  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 4,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q5  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 5,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q6  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 6,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
							(Q7  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 7,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q8  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 8,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q9  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 9,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q10 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 10, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q11 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 11, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q12 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 12, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
							(Q13 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 13, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q14 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 14, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q15 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 15, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q16 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 16, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q17 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 17, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q18 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 18, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
							(Q19 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 19, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q20 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 20, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q21 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 21, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q22 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 22, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q23 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 23, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q24 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 24, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
							(Q25 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 25, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q26 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 26, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q27 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 27, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q28 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 28, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q29 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 29, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q30 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 30, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
							(Q31 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 31, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q32 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 32, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q33 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 33, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q34 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 34, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q35 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 35, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q36 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 36, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
							(Q37 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 37, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q38 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 38, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q39 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 39, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q40 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 40, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q41 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 41, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q42 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 42, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
							(Q43 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 43, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q44 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 44, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q45 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 45, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q46 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 46, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q47 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 47, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q48 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 48, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) ,
							DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' '),
							(Q1  * @QTDE_P), (Q2  * @QTDE_P), (Q3  * @QTDE_P), (Q4  * @QTDE_P), (Q5  * @QTDE_P), (Q6  * @QTDE_P), (Q7  * @QTDE_P), (Q8  * @QTDE_P), (Q9  * @QTDE_P), (Q10 * @QTDE_P), (Q11 * @QTDE_P), (Q12 * @QTDE_P), (Q13 * @QTDE_P), (Q14 * @QTDE_P), (Q15 * @QTDE_P), (Q16 * @QTDE_P), (Q17 * @QTDE_P), (Q18 * @QTDE_P), (Q19 * @QTDE_P), (Q20 * @QTDE_P), (Q21 * @QTDE_P), (Q22 * @QTDE_P), (Q23 * @QTDE_P), (Q24 * @QTDE_P), 
							(Q25 * @QTDE_P), (Q26 * @QTDE_P), (Q27 * @QTDE_P), (Q28 * @QTDE_P), (Q29 * @QTDE_P), (Q30 * @QTDE_P), (Q31 * @QTDE_P), (Q32 * @QTDE_P), (Q33 * @QTDE_P), (Q34 * @QTDE_P), (Q35 * @QTDE_P), (Q36 * @QTDE_P), (Q37 * @QTDE_P), (Q38 * @QTDE_P), (Q39 * @QTDE_P), (Q40 * @QTDE_P), (Q41 * @QTDE_P), (Q42 * @QTDE_P), (Q43 * @QTDE_P), (Q44 * @QTDE_P), (Q45 * @QTDE_P), (Q46 * @QTDE_P), (Q47 * @QTDE_P), (Q48 * @QTDE_P)
							FROM PRODUTOS_PACKS_PERMITIDOS A 
								JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO AND COR_PRODUTO = @COR_PACK
							WHERE A.PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND A.COR_PRODUTO = @COR_PRODUTO

					FETCH NEXT FROM CURSOR_PACK INTO @COR_PACK
				END
				CLOSE CURSOR_PACK
				DEALLOCATE CURSOR_PACK*/
/*			END
			ELSE
			BEGIN*/

			/* SE VARIA PREÇO POR COR */
			IF @VARIA_PRECO_COR = 0
			BEGIN
				SELECT @PRECO1 = PRECO1, @PRECO2 = PRECO2, @PRECO3 = PRECO3, @PRECO4 = PRECO4
					FROM PRODUTOS_PRECOS
					WHERE CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO AND PRODUTO = @PRODUTO
			END	
			ELSE
			BEGIN
				SELECT @PRECO1 = PRECO1, @PRECO2 = PRECO2, @PRECO3 = PRECO3, @PRECO4 = PRECO4
					FROM PRODUTOS_PRECO_COR
					WHERE CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO
				
			END

				/* SE POSSUI DESCONTO/ENCARGO NO ITEM */
				IF @DESCONTO_ITEM <> 0
				BEGIN
					IF @INCIDE_SOBRE_PRECO = 1
						SELECT 	@PRECO1 = (@PRECO1 - ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)),
							@PRECO2 = (@PRECO2 - ROUND(@PRECO2 * (@DESCONTO_ITEM / 100), 2)),
							@PRECO3 = (@PRECO3 - ROUND(@PRECO3 * (@DESCONTO_ITEM / 100), 2)),
							@PRECO4 = (@PRECO4 - ROUND(@PRECO4 * (@DESCONTO_ITEM / 100), 2))
					ELSE
					BEGIN
						IF @VARIA_PRECO_TAM = 0
							SELECT @DESCONTO_ITEM_VENDA = ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)
						ELSE
						BEGIN
							SELECT 	@CONTADOR = 0
							SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO1 > 0 THEN (@PRECO1 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
								@CONTADOR = @CONTADOR + CASE WHEN @PRECO1 > 0 THEN 1 ELSE 0 END
							SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO2 > 0 THEN (@PRECO2 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
								@CONTADOR = @CONTADOR + CASE WHEN @PRECO2 > 0 THEN 1 ELSE 0 END
							SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO3 > 0 THEN (@PRECO3 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
								@CONTADOR = @CONTADOR + CASE WHEN @PRECO3 > 0 THEN 1 ELSE 0 END
							SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO4 > 0 THEN (@PRECO4 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
								@CONTADOR = @CONTADOR + CASE WHEN @PRECO4 > 0 THEN 1 ELSE 0 END
							SELECT @DESCONTO_ITEM_VENDA = ROUND(@DESCONTO_ITEM_VENDA / CASE WHEN @CONTADOR = 0 THEN 1 ELSE @CONTADOR END, 2)
						END
					END
				END
				/* VENDAS_PRODUTO */
				INSERT INTO VENDAS_PRODUTO
					(PEDIDO, PRODUTO, COR_PRODUTO, ENTREGA, ITEM_PEDIDO, LIMITE_ENTREGA, QTDE_ORIGINAL, QTDE_ENTREGAR, PRECO1, PRECO2, PRECO3, PRECO4, DESCONTO_ITEM, PACKS, VO1,  VO2,  VO3,  VO4,  VO5,  VO6,  VO7,  VO8,  VO9,  VO10, VO11, VO12, VO13, VO14, VO15, VO16, VO17, VO18, VO19, VO20, VO21, VO22, VO23, VO24, VO25, VO26, VO27, VO28, VO29, VO30, VO31, VO32, VO33, VO34, VO35, VO36, VO37, VO38, VO39, VO40, VO41, VO42, VO43, VO44, VO45, VO46, VO47, VO48)
				SELECT @PEDIDO_VENDA, A.PRODUTO, A.COR_PRODUTO, @DATA, '0000', @DATA, (QTDE * @QTDE_P),(QTDE * @QTDE_P), @PRECO1, @PRECO2, @PRECO3, @PRECO4, @DESCONTO_ITEM_VENDA, DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' '),
					(Q1  * @QTDE_P), (Q2  * @QTDE_P), (Q3  * @QTDE_P), (Q4  * @QTDE_P), (Q5  * @QTDE_P), (Q6  * @QTDE_P), (Q7  * @QTDE_P), (Q8  * @QTDE_P), (Q9  * @QTDE_P), (Q10 * @QTDE_P), (Q11 * @QTDE_P), (Q12 * @QTDE_P), (Q13 * @QTDE_P), (Q14 * @QTDE_P), (Q15 * @QTDE_P), (Q16 * @QTDE_P), (Q17 * @QTDE_P), (Q18 * @QTDE_P), (Q19 * @QTDE_P), (Q20 * @QTDE_P), (Q21 * @QTDE_P), (Q22 * @QTDE_P), (Q23 * @QTDE_P), (Q24 * @QTDE_P), 
					(Q25 * @QTDE_P), (Q26 * @QTDE_P), (Q27 * @QTDE_P), (Q28 * @QTDE_P), (Q29 * @QTDE_P), (Q30 * @QTDE_P), (Q31 * @QTDE_P), (Q32 * @QTDE_P), (Q33 * @QTDE_P), (Q34 * @QTDE_P), (Q35 * @QTDE_P), (Q36 * @QTDE_P), (Q37 * @QTDE_P), (Q38 * @QTDE_P), (Q39 * @QTDE_P), (Q40 * @QTDE_P), (Q41 * @QTDE_P), (Q42 * @QTDE_P), (Q43 * @QTDE_P), (Q44 * @QTDE_P), (Q45 * @QTDE_P), (Q46 * @QTDE_P), (Q47 * @QTDE_P), (Q48 * @QTDE_P) 
					FROM PRODUTOS_PACKS_PERMITIDOS A
						 JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO
					WHERE A.PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND COR_PRODUTO = @COR_PRODUTO

				/* ROMANEIOS_RESERVAS */				
				INSERT INTO ROMANEIOS_RESERVAS 
					(ROMANEIO, FILIAL, PEDIDO, PRODUTO, COR_PRODUTO, COR_PEDIDO, ENTREGA, ITEM_PEDIDO, QTDE_R, VALOR_R, PACKS, 
					R1,  R2,  R3,  R4,  R5,  R6,  R7,  R8,  R9,  R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R22, R23, R24,
					R25, R26, R27, R28, R29, R30, R31, R32, R33, R34, R35, R36, R37, R38, R39, R40 ,R41, R42, R43, R44, R45, R46, R47, R48)
				SELECT @ROMANEIO, @FILIAL, @PEDIDO_VENDA, A.PRODUTO, A.COR_PRODUTO, A.COR_PRODUTO, @DATA, '0000', (QTDE * @QTDE_P),
					(Q1  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 1,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q2  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 2,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q3  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 3,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q4  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 4,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q5  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 5,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q6  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 6,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
					(Q7  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 7,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q8  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 8,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q9  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 9,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q10 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 10, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q11 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 11, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q12 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 12, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
					(Q13 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 13, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q14 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 14, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q15 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 15, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q16 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 16, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q17 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 17, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q18 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 18, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
					(Q19 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 19, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q20 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 20, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q21 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 21, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q22 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 22, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q23 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 23, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q24 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 24, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
					(Q25 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 25, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q26 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 26, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q27 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 27, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q28 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 28, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q29 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 29, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q30 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 30, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
					(Q31 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 31, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q32 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 32, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q33 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 33, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q34 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 34, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q35 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 35, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q36 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 36, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
					(Q37 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 37, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q38 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 38, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q39 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 39, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q40 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 40, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q41 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 41, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q42 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 42, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
					(Q43 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 43, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q44 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 44, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q45 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 45, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q46 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 46, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q47 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 47, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q48 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 48, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) ,
					DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' '),
					(Q1  * @QTDE_P), (Q2  * @QTDE_P), (Q3  * @QTDE_P), (Q4  * @QTDE_P), (Q5  * @QTDE_P), (Q6  * @QTDE_P), (Q7  * @QTDE_P), (Q8  * @QTDE_P), (Q9  * @QTDE_P), (Q10 * @QTDE_P), (Q11 * @QTDE_P), (Q12 * @QTDE_P), (Q13 * @QTDE_P), (Q14 * @QTDE_P), (Q15 * @QTDE_P), (Q16 * @QTDE_P), (Q17 * @QTDE_P), (Q18 * @QTDE_P), (Q19 * @QTDE_P), (Q20 * @QTDE_P), (Q21 * @QTDE_P), (Q22 * @QTDE_P), (Q23 * @QTDE_P), (Q24 * @QTDE_P), 
					(Q25 * @QTDE_P), (Q26 * @QTDE_P), (Q27 * @QTDE_P), (Q28 * @QTDE_P), (Q29 * @QTDE_P), (Q30 * @QTDE_P), (Q31 * @QTDE_P), (Q32 * @QTDE_P), (Q33 * @QTDE_P), (Q34 * @QTDE_P), (Q35 * @QTDE_P), (Q36 * @QTDE_P), (Q37 * @QTDE_P), (Q38 * @QTDE_P), (Q39 * @QTDE_P), (Q40 * @QTDE_P), (Q41 * @QTDE_P), (Q42 * @QTDE_P), (Q43 * @QTDE_P), (Q44 * @QTDE_P), (Q45 * @QTDE_P), (Q46 * @QTDE_P), (Q47 * @QTDE_P), (Q48 * @QTDE_P)
					FROM PRODUTOS_PACKS_PERMITIDOS A 
						JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO 
					WHERE A.PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND COR_PRODUTO = @COR_PRODUTO

		
				IF @STATUS <> 'D' AND @STATUS <> 'F'
					SELECT @STATUS = 'P'

				FETCH NEXT FROM CURSOR_ITENS INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
			/*END*/
		END
		/* SE SOBRARAM QTDES */
		WHILE @QTDE_D > 0
		BEGIN
			FETCH FIRST FROM CURSOR_ITENS INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
			WHILE @@FETCH_STATUS = 0
			BEGIN
				SELECT @QTDE_P = 1, @QTDE_D = @QTDE_D - 1
	
				/* PEDIDO DE VENDA */
				SELECT @PEDIDO_VENDA = NULL, @CODIGO_TAB_PRECO = @TAB_PRECO, @PRECO1 = 0, @PRECO2 = 0, @PRECO3 = 0, @PRECO4 = 0, @DESCONTO_ITEM_VENDA = 0
	
				/* TABELA DE PRECO */
				IF @TAB_PRECO_CLIENTE = 1
				BEGIN
					SELECT @CODIGO_TAB_PRECO = CODIGO_TAB_PRECO 
						FROM CLIENTES_ATACADO 
						WHERE CLIENTE_ATACADO = @CLIENTE_ATACADO
					IF ISNULL(@CODIGO_TAB_PRECO, '') = ''
						SET @CODIGO_TAB_PRECO = @TAB_PRECO
				END
					
				SELECT @PEDIDO_VENDA = PEDIDO 
					FROM VENDAS
					WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND CLIENTE_ATACADO = @CLIENTE_ATACADO
	
				IF @PEDIDO_VENDA IS NULL OR @@ROWCOUNT = 0
				BEGIN
					/* INCLUI NOVO PEDIDO */
					EXEC LX_SEQUENCIAL 'VENDAS.PEDIDO', NULL, @PEDIDO_VENDA OUTPUT
					INSERT INTO VENDAS
						(PEDIDO, ROMANEIO, COLECAO, CODIGO_TAB_PRECO, TIPO, CONDICAO_PGTO, FILIAL, CLIENTE_ATACADO, NOME_CLIFOR_ENTREGA, TRANSPORTADORA, MOEDA, REPRESENTANTE, GERENTE, COMISSAO, COMISSAO_GERENTE, PORCENTAGEM_ACERTO, EMISSAO, CADASTRAMENTO, TOT_QTDE_ORIGINAL, TOT_QTDE_ENTREGAR, TOT_VALOR_ORIGINAL, TOT_VALOR_ENTREGAR, DESCONTO, ENCARGO, DESCONTO_COND_PGTO, VALOR_IPI, TABELA_FILHA, OBS, APROVACAO, DESCONTO_SOBRE_1, DESCONTO_SOBRE_2, DESCONTO_SOBRE_3, DESCONTO_SOBRE_4, PORC_DESCONTO_DIGITADO, PORC_DESCONTO, PORC_DESCONTO_COND_PGTO, PORC_ENCARGO, ACEITA_PECAS_PEQUENAS, ACEITA_PECAS_COM_CORTE, INDICADOR_VENDA, FILIAL_DIGITACAO  , TIPO_CAIXA, TIPO_FRETE, ENTREGA_CIF, TRANSP_REDESPACHO )
					VALUES  (@PEDIDO_VENDA, @ROMANEIO, @COLECAO, @CODIGO_TAB_PRECO, @TIPO_VENDA, @COND_PGTO, @FILIAL, @CLIENTE_ATACADO, @CLIENTE_ATACADO, CASE WHEN @UITILIZA_TRANSP_CLIENTE=1 THEN @TRANSPORTADORA_CLIENTE ELSE @TRANSPORTADORA END, @MOEDA, @REPRESENTANTE, @GERENTE, @COMISSAO, @COMISSAO_GERENTE, @PORCENTAGEM_ACERTO, CONVERT(VARCHAR(8), GETDATE(), 112), CONVERT(VARCHAR(8), GETDATE(), 112), 0, 0, 0,0,0,0,0,0, 'VENDAS_PRODUTO', 'PEDIDO GERADO PELO PROCESSO DE DISTRIBUIÇÃO. ROMANEIO NO. ' + @ROMANEIO, 'E', 0,0,0,0, 1, 0, @DESCONTO_COND_PGTO, @ENCARGO, 100, 100, 'D', @FILIAL, @TIPO_CAIXA, @TIPO_FRETE, @ENTREGA_CIF, CASE WHEN @UITILIZA_TRANSP_CLIENTE=1 THEN @TRANSP_REDESPACHO ELSE @TRANSPORTADORA END)
					IF @@ROWCOUNT = 0
					BEGIN
						SELECT @ERRNO = 30002, @ERRMSG = 'PROBLEMA NO INSERT EM VENDAS !'
						GOTO ERROR
					END
				END
				ELSE
				BEGIN
					IF EXISTS(SELECT * FROM VENDAS WHERE PEDIDO = @PEDIDO_VENDA AND (PORC_DESCONTO_COND_PGTO <> @DESCONTO_COND_PGTO OR PORC_ENCARGO <> @ENCARGO OR CONDICAO_PGTO <> @COND_PGTO OR CODIGO_TAB_PRECO <> @CODIGO_TAB_PRECO))
					BEGIN
						UPDATE VENDAS SET PORC_DESCONTO_COND_PGTO = @DESCONTO_COND_PGTO, PORC_ENCARGO = @ENCARGO, CONDICAO_PGTO = @COND_PGTO, CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO
							WHERE PEDIDO = @PEDIDO_VENDA
						IF @@ROWCOUNT = 0
						BEGIN
							SELECT @ERRNO = 30002, @ERRMSG = 'PROBLEMA NO UPDATE EM VENDAS !'
							GOTO ERROR
						END
					END
				END

				/* VERIFICA SE ITENS JA EXISTEM PARA FAZER INSERT OU UPDATE */
				IF NOT EXISTS (SELECT * FROM VENDAS_PRODUTO WHERE PRODUTO = @PRODUTO AND PEDIDO = @PEDIDO_VENDA AND COR_PRODUTO = @COR_PRODUTO)
				BEGIN
	
					/* SE VARIA PREÇO POR COR */
					IF @VARIA_PRECO_COR = 1
					BEGIN
						DECLARE CURSOR_PACK CURSOR FOR 
							SELECT COR_PRODUTO 
								FROM PRODUTOS_PACKS_PERMITIDOS
								WHERE PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND COR_PRODUTO = @COR_PRODUTO
						OPEN CURSOR_PACK
						FETCH NEXT FROM CURSOR_PACK INTO @COR_PACK
						WHILE @@FETCH_STATUS = 0
						BEGIN
							SELECT @PRECO1 = PRECO1, @PRECO2 = PRECO2, @PRECO3 = PRECO3, @PRECO4 = PRECO4
								FROM PRODUTOS_PRECO_COR
								WHERE CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PACK
			
							/* SE POSSUI DESCONTO/ENCARGO NO ITEM */
							IF @DESCONTO_ITEM <> 0
							BEGIN
								IF @INCIDE_SOBRE_PRECO = 1
									SELECT 	@PRECO1 = (@PRECO1 - ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)),
										@PRECO2 = (@PRECO2 - ROUND(@PRECO2 * (@DESCONTO_ITEM / 100), 2)),
										@PRECO3 = (@PRECO3 - ROUND(@PRECO3 * (@DESCONTO_ITEM / 100), 2)),
										@PRECO4 = (@PRECO4 - ROUND(@PRECO4 * (@DESCONTO_ITEM / 100), 2))
								ELSE
								BEGIN
									IF @VARIA_PRECO_TAM = 0
										SELECT @DESCONTO_ITEM_VENDA = ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)
									ELSE
									BEGIN
										SELECT 	@CONTADOR = 0
										SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO1 > 0 THEN (@PRECO1 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
											@CONTADOR = @CONTADOR + CASE WHEN @PRECO1 > 0 THEN 1 ELSE 0 END
										SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO2 > 0 THEN (@PRECO2 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
											@CONTADOR = @CONTADOR + CASE WHEN @PRECO2 > 0 THEN 1 ELSE 0 END
										SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO3 > 0 THEN (@PRECO3 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
											@CONTADOR = @CONTADOR + CASE WHEN @PRECO3 > 0 THEN 1 ELSE 0 END
										SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO4 > 0 THEN (@PRECO4 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
											@CONTADOR = @CONTADOR + CASE WHEN @PRECO4 > 0 THEN 1 ELSE 0 END
										SELECT @DESCONTO_ITEM_VENDA = ROUND(@DESCONTO_ITEM_VENDA / CASE WHEN @CONTADOR = 0 THEN 1 ELSE @CONTADOR END, 2)
									END
								END
							END

							/* VENDAS_PRODUTO */
							INSERT INTO VENDAS_PRODUTO
								(PEDIDO, PRODUTO, COR_PRODUTO, ENTREGA, ITEM_PEDIDO, LIMITE_ENTREGA, QTDE_ORIGINAL, QTDE_ENTREGAR, PRECO1, PRECO2, PRECO3, PRECO4, DESCONTO_ITEM, PACKS, VO1,  VO2,  VO3,  VO4,  VO5,  VO6,  VO7,  VO8,  VO9,  VO10, VO11, VO12, VO13, VO14, VO15, VO16, VO17, VO18, VO19, VO20, VO21, VO22, VO23, VO24, VO25, VO26, VO27, VO28, VO29, VO30, VO31, VO32, VO33, VO34, VO35, VO36, VO37, VO38, VO39, VO40, VO41, VO42, VO43, VO44, VO45, VO46, VO47, VO48)
							SELECT 	@PEDIDO_VENDA, A.PRODUTO, A.COR_PRODUTO, @DATA, '0000', @DATA, (QTDE * @QTDE_P), (QTDE * @QTDE_P), @PRECO1, @PRECO2, @PRECO3, @PRECO4, @DESCONTO_ITEM_VENDA, DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' '),
								(Q1  * @QTDE_P), (Q2  * @QTDE_P), (Q3  * @QTDE_P), (Q4  * @QTDE_P), (Q5  * @QTDE_P), (Q6  * @QTDE_P), (Q7  * @QTDE_P), (Q8  * @QTDE_P), (Q9  * @QTDE_P), (Q10 * @QTDE_P), (Q11 * @QTDE_P), (Q12 * @QTDE_P), (Q13 * @QTDE_P), (Q14 * @QTDE_P), (Q15 * @QTDE_P), (Q16 * @QTDE_P), (Q17 * @QTDE_P), (Q18 * @QTDE_P), (Q19 * @QTDE_P), (Q20 * @QTDE_P), (Q21 * @QTDE_P), (Q22 * @QTDE_P), (Q23 * @QTDE_P), (Q24 * @QTDE_P), 
								(Q25 * @QTDE_P), (Q26 * @QTDE_P), (Q27 * @QTDE_P), (Q28 * @QTDE_P), (Q29 * @QTDE_P), (Q30 * @QTDE_P), (Q31 * @QTDE_P), (Q32 * @QTDE_P), (Q33 * @QTDE_P), (Q34 * @QTDE_P), (Q35 * @QTDE_P), (Q36 * @QTDE_P), (Q37 * @QTDE_P), (Q38 * @QTDE_P), (Q39 * @QTDE_P), (Q40 * @QTDE_P), (Q41 * @QTDE_P), (Q42 * @QTDE_P), (Q43 * @QTDE_P), (Q44 * @QTDE_P), (Q45 * @QTDE_P), (Q46 * @QTDE_P), (Q47 * @QTDE_P), (Q48 * @QTDE_P) 
								FROM PRODUTOS_PACKS_PERMITIDOS A 
									JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO
								WHERE A.PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND A.COR_PRODUTO = @COR_PRODUTO
			
							/* ROMANEIOS_RESERVAS */				
							INSERT INTO ROMANEIOS_RESERVAS 
								(ROMANEIO, FILIAL, PEDIDO, PRODUTO, COR_PRODUTO, COR_PEDIDO, ENTREGA, ITEM_PEDIDO, QTDE_R, VALOR_R, PACKS, 
								R1,  R2,  R3,  R4,  R5,  R6,  R7,  R8,  R9,  R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R22, R23, R24,
								R25, R26, R27, R28, R29, R30, R31, R32, R33, R34, R35, R36, R37, R38, R39, R40 ,R41, R42, R43, R44, R45, R46, R47, R48)
							SELECT 	@ROMANEIO, @FILIAL, @PEDIDO_VENDA, A.PRODUTO, A.COR_PRODUTO, A.COR_PRODUTO, @DATA, '0000', (QTDE * @QTDE_P),
									(Q1  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 1,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q2  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 2,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q3  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 3,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q4  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 4,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q5  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 5,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q6  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 6,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
									(Q7  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 7,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q8  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 8,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q9  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 9,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q10 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 10, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q11 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 11, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q12 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 12, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
									(Q13 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 13, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q14 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 14, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q15 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 15, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q16 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 16, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q17 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 17, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q18 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 18, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
									(Q19 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 19, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q20 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 20, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q21 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 21, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q22 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 22, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q23 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 23, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q24 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 24, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
									(Q25 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 25, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q26 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 26, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q27 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 27, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q28 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 28, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q29 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 29, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q30 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 30, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
									(Q31 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 31, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q32 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 32, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q33 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 33, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q34 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 34, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q35 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 35, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q36 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 36, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
									(Q37 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 37, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q38 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 38, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q39 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 39, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q40 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 40, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q41 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 41, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q42 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 42, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
									(Q43 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 43, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) + (Q44 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 44, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q45 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 45, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q46 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 46, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q47 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 47, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q48 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 48, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) ,
									DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' '),
									(Q1  * @QTDE_P), (Q2  * @QTDE_P), (Q3  * @QTDE_P), (Q4  * @QTDE_P), (Q5  * @QTDE_P), (Q6  * @QTDE_P), (Q7  * @QTDE_P), (Q8  * @QTDE_P), (Q9  * @QTDE_P), (Q10 * @QTDE_P), (Q11 * @QTDE_P), (Q12 * @QTDE_P), (Q13 * @QTDE_P), (Q14 * @QTDE_P), (Q15 * @QTDE_P), (Q16 * @QTDE_P), (Q17 * @QTDE_P), (Q18 * @QTDE_P), (Q19 * @QTDE_P), (Q20 * @QTDE_P), (Q21 * @QTDE_P), (Q22 * @QTDE_P), (Q23 * @QTDE_P), (Q24 * @QTDE_P), 
									(Q25 * @QTDE_P), (Q26 * @QTDE_P), (Q27 * @QTDE_P), (Q28 * @QTDE_P), (Q29 * @QTDE_P), (Q30 * @QTDE_P), (Q31 * @QTDE_P), (Q32 * @QTDE_P), (Q33 * @QTDE_P), (Q34 * @QTDE_P), (Q35 * @QTDE_P), (Q36 * @QTDE_P), (Q37 * @QTDE_P), (Q38 * @QTDE_P), (Q39 * @QTDE_P), (Q40 * @QTDE_P), (Q41 * @QTDE_P), (Q42 * @QTDE_P), (Q43 * @QTDE_P), (Q44 * @QTDE_P), (Q45 * @QTDE_P), (Q46 * @QTDE_P), (Q47 * @QTDE_P), (Q48 * @QTDE_P)
									FROM PRODUTOS_PACKS_PERMITIDOS A 
										JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO AND COR_PRODUTO = @COR_PACK
									WHERE A.PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND A.COR_PRODUTO = @COR_PRODUTO
		
							FETCH NEXT FROM CURSOR_PACK INTO @COR_PACK
						END
						CLOSE CURSOR_PACK
						DEALLOCATE CURSOR_PACK
					END
					ELSE
					BEGIN
						SELECT @PRECO1 = PRECO1, @PRECO2 = PRECO2, @PRECO3 = PRECO3, @PRECO4 = PRECO4
							FROM PRODUTOS_PRECOS
							WHERE CODIGO_TAB_PRECO = @CODIGO_TAB_PRECO AND PRODUTO = @PRODUTO
		
						/* SE POSSUI DESCONTO/ENCARGO NO ITEM */
						IF @DESCONTO_ITEM <> 0
						BEGIN
							IF @INCIDE_SOBRE_PRECO = 1
								SELECT 	@PRECO1 = (@PRECO1 - ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)),
									@PRECO2 = (@PRECO2 - ROUND(@PRECO2 * (@DESCONTO_ITEM / 100), 2)),
									@PRECO3 = (@PRECO3 - ROUND(@PRECO3 * (@DESCONTO_ITEM / 100), 2)),
									@PRECO4 = (@PRECO4 - ROUND(@PRECO4 * (@DESCONTO_ITEM / 100), 2))
							ELSE
							BEGIN
								IF @VARIA_PRECO_TAM = 0
									SELECT @DESCONTO_ITEM_VENDA = ROUND(@PRECO1 * (@DESCONTO_ITEM / 100), 2)
								ELSE
								BEGIN
									SELECT 	@CONTADOR = 0
									SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO1 > 0 THEN (@PRECO1 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
										@CONTADOR = @CONTADOR + CASE WHEN @PRECO1 > 0 THEN 1 ELSE 0 END
									SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO2 > 0 THEN (@PRECO2 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
										@CONTADOR = @CONTADOR + CASE WHEN @PRECO2 > 0 THEN 1 ELSE 0 END
									SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO3 > 0 THEN (@PRECO3 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
										@CONTADOR = @CONTADOR + CASE WHEN @PRECO3 > 0 THEN 1 ELSE 0 END
									SELECT 	@DESCONTO_ITEM_VENDA = @DESCONTO_ITEM_VENDA + CASE WHEN @PRECO4 > 0 THEN (@PRECO4 * (@DESCONTO_ITEM / 100)) ELSE 0 END,
										@CONTADOR = @CONTADOR + CASE WHEN @PRECO4 > 0 THEN 1 ELSE 0 END
									SELECT @DESCONTO_ITEM_VENDA = ROUND(@DESCONTO_ITEM_VENDA / CASE WHEN @CONTADOR = 0 THEN 1 ELSE @CONTADOR END, 2)
								END
							END
						END
						/* VENDAS_PRODUTO */
						INSERT INTO VENDAS_PRODUTO
							(PEDIDO, PRODUTO, COR_PRODUTO, ENTREGA, ITEM_PEDIDO, LIMITE_ENTREGA, QTDE_ORIGINAL, QTDE_ENTREGAR, PRECO1, PRECO2, PRECO3, PRECO4, DESCONTO_ITEM, PACKS, VO1,  VO2,  VO3,  VO4,  VO5,  VO6,  VO7,  VO8,  VO9,  VO10, VO11, VO12, VO13, VO14, VO15, VO16, VO17, VO18, VO19, VO20, VO21, VO22, VO23, VO24, VO25, VO26, VO27, VO28, VO29, VO30, VO31, VO32, VO33, VO34, VO35, VO36, VO37, VO38, VO39, VO40, VO41, VO42, VO43, VO44, VO45, VO46, VO47, VO48)
						SELECT @PEDIDO_VENDA, A.PRODUTO, A.COR_PRODUTO, @DATA, '0000', @DATA, (QTDE * @QTDE_P),(QTDE * @QTDE_P), @PRECO1, @PRECO2, @PRECO3, @PRECO4, @DESCONTO_ITEM_VENDA, DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' '),
							(Q1  * @QTDE_P), (Q2  * @QTDE_P), (Q3  * @QTDE_P), (Q4  * @QTDE_P), (Q5  * @QTDE_P), (Q6  * @QTDE_P), (Q7  * @QTDE_P), (Q8  * @QTDE_P), (Q9  * @QTDE_P), (Q10 * @QTDE_P), (Q11 * @QTDE_P), (Q12 * @QTDE_P), (Q13 * @QTDE_P), (Q14 * @QTDE_P), (Q15 * @QTDE_P), (Q16 * @QTDE_P), (Q17 * @QTDE_P), (Q18 * @QTDE_P), (Q19 * @QTDE_P), (Q20 * @QTDE_P), (Q21 * @QTDE_P), (Q22 * @QTDE_P), (Q23 * @QTDE_P), (Q24 * @QTDE_P), 
							(Q25 * @QTDE_P), (Q26 * @QTDE_P), (Q27 * @QTDE_P), (Q28 * @QTDE_P), (Q29 * @QTDE_P), (Q30 * @QTDE_P), (Q31 * @QTDE_P), (Q32 * @QTDE_P), (Q33 * @QTDE_P), (Q34 * @QTDE_P), (Q35 * @QTDE_P), (Q36 * @QTDE_P), (Q37 * @QTDE_P), (Q38 * @QTDE_P), (Q39 * @QTDE_P), (Q40 * @QTDE_P), (Q41 * @QTDE_P), (Q42 * @QTDE_P), (Q43 * @QTDE_P), (Q44 * @QTDE_P), (Q45 * @QTDE_P), (Q46 * @QTDE_P), (Q47 * @QTDE_P), (Q48 * @QTDE_P) 
							FROM PRODUTOS_PACKS_PERMITIDOS A
								 JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO
							WHERE A.PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND A.COR_PRODUTO = @COR_PRODUTO

						/* ROMANEIOS_RESERVAS */				
						INSERT INTO ROMANEIOS_RESERVAS 
							(ROMANEIO, FILIAL, PEDIDO, PRODUTO, COR_PRODUTO, COR_PEDIDO, ENTREGA, ITEM_PEDIDO, QTDE_R, VALOR_R, PACKS, 
							R1,  R2,  R3,  R4,  R5,  R6,  R7,  R8,  R9,  R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R22, R23, R24,
							R25, R26, R27, R28, R29, R30, R31, R32, R33, R34, R35, R36, R37, R38, R39, R40 ,R41, R42, R43, R44, R45, R46, R47, R48)
						SELECT @ROMANEIO, @FILIAL, @PEDIDO_VENDA, A.PRODUTO, A.COR_PRODUTO, A.COR_PRODUTO, @DATA, '0000', (QTDE * @QTDE_P),
							(Q1  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 1,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q2  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 2,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q3  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 3,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q4  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 4,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q5  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 5,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q6  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 6,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
							(Q7  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 7,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q8  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 8,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q9  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 9,  1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q10 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 10, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q11 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 11, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q12 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 12, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
							(Q13 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 13, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q14 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 14, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q15 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 15, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q16 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 16, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q17 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 17, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q18 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 18, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
							(Q19 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 19, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q20 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 20, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q21 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 21, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q22 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 22, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q23 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 23, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q24 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 24, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
							(Q25 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 25, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q26 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 26, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q27 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 27, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q28 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 28, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q29 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 29, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q30 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 30, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
							(Q31 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 31, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q32 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 32, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q33 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 33, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q34 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 34, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q35 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 35, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q36 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 36, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  +
							(Q37 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 37, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q38 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 38, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q39 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 39, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q40 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 40, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q41 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 41, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q42 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 42, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + 
							(Q43 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 43, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q44 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 44, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q45 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 45, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q46 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 46, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q47 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 47, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA)  + (Q48 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 48, 1) WHEN 1 THEN @PRECO1 WHEN 2 THEN @PRECO2 WHEN 3 THEN @PRECO3 WHEN 4 THEN @PRECO4 END - @DESCONTO_ITEM_VENDA) ,
							DBO.FX_PADR(@LETRA_PACK, 2, ' ') + DBO.FX_PADL(RTRIM(LTRIM(STR(@QTDE_P, 3, 0))), 3, ' '),
							(Q1  * @QTDE_P), (Q2  * @QTDE_P), (Q3  * @QTDE_P), (Q4  * @QTDE_P), (Q5  * @QTDE_P), (Q6  * @QTDE_P), (Q7  * @QTDE_P), (Q8  * @QTDE_P), (Q9  * @QTDE_P), (Q10 * @QTDE_P), (Q11 * @QTDE_P), (Q12 * @QTDE_P), (Q13 * @QTDE_P), (Q14 * @QTDE_P), (Q15 * @QTDE_P), (Q16 * @QTDE_P), (Q17 * @QTDE_P), (Q18 * @QTDE_P), (Q19 * @QTDE_P), (Q20 * @QTDE_P), (Q21 * @QTDE_P), (Q22 * @QTDE_P), (Q23 * @QTDE_P), (Q24 * @QTDE_P), 
							(Q25 * @QTDE_P), (Q26 * @QTDE_P), (Q27 * @QTDE_P), (Q28 * @QTDE_P), (Q29 * @QTDE_P), (Q30 * @QTDE_P), (Q31 * @QTDE_P), (Q32 * @QTDE_P), (Q33 * @QTDE_P), (Q34 * @QTDE_P), (Q35 * @QTDE_P), (Q36 * @QTDE_P), (Q37 * @QTDE_P), (Q38 * @QTDE_P), (Q39 * @QTDE_P), (Q40 * @QTDE_P), (Q41 * @QTDE_P), (Q42 * @QTDE_P), (Q43 * @QTDE_P), (Q44 * @QTDE_P), (Q45 * @QTDE_P), (Q46 * @QTDE_P), (Q47 * @QTDE_P), (Q48 * @QTDE_P)
							FROM PRODUTOS_PACKS_PERMITIDOS A 
								JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO 
							WHERE A.PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND A.COR_PRODUTO = @COR_PRODUTO
					END	
				END
				ELSE
				BEGIN
					/* UPDATE EM VENDAS PARA INCLUIR MAIS UM PACK */
					UPDATE A SET 
					VO1  = VO1  + (Q1  * @QTDE_P), VO2  = VO2  + (Q2  * @QTDE_P), VO3  = VO3  + (Q3  * @QTDE_P), VO4  = VO4  + (Q4  * @QTDE_P), VO5  = VO5  + (Q5  * @QTDE_P), VO6  = VO6  + (Q6  * @QTDE_P), VO7  = VO7  + (Q7  * @QTDE_P), VO8  = VO8  + (Q8  * @QTDE_P), VO9  = VO9  + (Q9  * @QTDE_P), VO10 = VO10 + (Q10 * @QTDE_P), VO11 = VO11 + (Q11 * @QTDE_P), VO12 = VO12 + (Q12 * @QTDE_P), VO13 = VO13 + (Q13 * @QTDE_P), VO14 = VO14 + (Q14 * @QTDE_P), VO15 = VO15 + (Q15 * @QTDE_P), VO16 = VO16 + (Q16 * @QTDE_P), VO17 = VO17 + (Q17 * @QTDE_P), VO18 = VO18 + (Q18 * @QTDE_P), VO19 = VO19 + (Q19 * @QTDE_P), VO20 = VO20 + (Q20 * @QTDE_P), VO21 = VO21 + (Q21 * @QTDE_P), VO22 = VO22 + (Q22 * @QTDE_P), VO23 = VO23 + (Q23 * @QTDE_P), VO24 = VO24 + (Q24 * @QTDE_P), 
					VO25 = VO25 + (Q25 * @QTDE_P), VO26 = VO26 + (Q26 * @QTDE_P), VO27 = VO27 + (Q27 * @QTDE_P), VO28 = VO28 + (Q28 * @QTDE_P), VO29 = VO29 + (Q29 * @QTDE_P), VO30 = VO30 + (Q30 * @QTDE_P), VO31 = VO31 + (Q31 * @QTDE_P), VO32 = VO32 + (Q32 * @QTDE_P), VO33 = VO33 + (Q33 * @QTDE_P), VO34 = VO34 + (Q34 * @QTDE_P), VO35 = VO35 + (Q35 * @QTDE_P), VO36 = VO36 + (Q36 * @QTDE_P), VO37 = VO37 + (Q37 * @QTDE_P), VO38 = VO38 + (Q38 * @QTDE_P), VO39 = VO39 + (Q39 * @QTDE_P), VO40 = VO40 + (Q40 * @QTDE_P), VO41 = VO41 + (Q41 * @QTDE_P), VO42 = VO42 + (Q42 * @QTDE_P), VO43 = VO43 + (Q43 * @QTDE_P), VO44 = VO44 + (Q44 * @QTDE_P), VO45 = VO45 + (Q45 * @QTDE_P), VO46 = VO46 + (Q46 * @QTDE_P), VO47 = VO47 + (Q47 * @QTDE_P), VO48 = VO48 + (Q48 * @QTDE_P), 
					QTDE_ORIGINAL = QTDE_ORIGINAL + (QTDE * @QTDE_P), PACKS = SUBSTRING(PACKS, 1, 2) + DBO.FX_PADL(STR(CONVERT(INT, (SUBSTRING(PACKS, 3, 3) + @QTDE_P))), 3, ' ')
					FROM VENDAS_PRODUTO A 
						JOIN PRODUTOS_PACKS_PERMITIDOS B ON A.PRODUTO = B.PRODUTO AND A.COR_PRODUTO = B.COR_PRODUTO 
						JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO
					WHERE A.PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PEDIDO = @PEDIDO AND PACK = @LETRA_PACK AND A.COR_PRODUTO = @COR_PRODUTO

					/* ATUALIZA ROMANEIOS_RESERVAS */
					UPDATE A SET
					R1  = R1  + (Q1  * @QTDE_P), R2  = R2  + (Q2  * @QTDE_P), R3  = R3  + (Q3  * @QTDE_P), R4  = R4  + (Q4  * @QTDE_P), R5  = R5  + (Q5  * @QTDE_P), R6  = R6  + (Q6  * @QTDE_P), R7  = R7  + (Q7  * @QTDE_P), R8  = R8  + (Q8  * @QTDE_P), R9  = R9  + (Q9  * @QTDE_P), R10 = R10 + (Q10 * @QTDE_P), R11 = R11 + (Q11 * @QTDE_P), R12 = R12 + (Q12 * @QTDE_P), R13 = R13 + (Q13 * @QTDE_P), R14 = R14 + (Q14 * @QTDE_P), R15 = R15 + (Q15 * @QTDE_P), R16 = R16 + (Q16 * @QTDE_P), R17 = R17 + (Q17 * @QTDE_P), R18 = R18 + (Q18 * @QTDE_P), R19 = R19 + (Q19 * @QTDE_P), R20 = R20 + (Q20 * @QTDE_P), R21 = R21 + (Q21 * @QTDE_P), R22 = R22 + (Q22 * @QTDE_P), R23 = R23 + (Q23 * @QTDE_P), R24 = R24 + (Q24 * @QTDE_P), 
					R25 = R25 + (Q25 * @QTDE_P), R26 = R26 + (Q26 * @QTDE_P), R27 = R27 + (Q27 * @QTDE_P), R28 = R28 + (Q28 * @QTDE_P), R29 = R29 + (Q29 * @QTDE_P), R30 = R30 + (Q30 * @QTDE_P), R31 = R31 + (Q31 * @QTDE_P), R32 = R32 + (Q32 * @QTDE_P), R33 = R33 + (Q33 * @QTDE_P), R34 = R34 + (Q34 * @QTDE_P), R35 = R35 + (Q35 * @QTDE_P), R36 = R36 + (Q36 * @QTDE_P), R37 = R37 + (Q37 * @QTDE_P), R38 = R38 + (Q38 * @QTDE_P), R39 = R39 + (Q39 * @QTDE_P), R40 = R40 + (Q40 * @QTDE_P), R41 = R41 + (Q41 * @QTDE_P), R42 = R42 + (Q42 * @QTDE_P), R43 = R43 + (Q43 * @QTDE_P), R44 = R44 + (Q44 * @QTDE_P), R45 = R45 + (Q45 * @QTDE_P), R46 = R46 + (Q46 * @QTDE_P), R47 = R47 + (Q47 * @QTDE_P), R48 = R48 + (Q48 * @QTDE_P), 
					QTDE_R = QTDE_R + (QTDE * @QTDE_P), VALOR_R = VALOR_R +
					(Q1  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 1,  1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q2  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 2,  1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q3  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 3,  1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q4  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 4,  1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q5  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 5,  1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q6  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 6,  1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) +
					(Q7  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 7,  1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q8  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 8,  1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q9  * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 9,  1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q10 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 10, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q11 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 11, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q12 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 12, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) +
					(Q13 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 13, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q14 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 14, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q15 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 15, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q16 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 16, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q17 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 17, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q18 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 18, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) +
					(Q19 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 19, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q20 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 20, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q21 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 21, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q22 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 22, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q23 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 23, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q24 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 24, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) +
					(Q25 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 25, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q26 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 26, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q27 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 27, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q28 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 28, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q29 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 29, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q30 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 30, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) +
					(Q31 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 31, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q32 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 32, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q33 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 33, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q34 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 34, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q35 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 35, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q36 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 36, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) +
					(Q37 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 37, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q38 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 38, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q39 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 39, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q40 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 40, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q41 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 41, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q42 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 42, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) +
					(Q43 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 43, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q44 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 44, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q45 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 45, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q46 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 46, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q47 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 47, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)) + (Q48 * @QTDE_P) * (CASE SUBSTRING(PONTEIRO_PRECO_TAM, 48, 1) WHEN 1 THEN ISNULL(PRECO1, 0) WHEN 2 THEN ISNULL(PRECO2, 0) WHEN 3 THEN ISNULL(PRECO3, 0) WHEN 4 THEN ISNULL(PRECO4, 0) END - ISNULL(DESCONTO_ITEM, 0)),
					A.PACKS = SUBSTRING(A.PACKS, 1, 2) + DBO.FX_PADL(STR(CONVERT(INT, (SUBSTRING(A.PACKS, 3, 3) + @QTDE_P))), 3, ' ')
					FROM ROMANEIOS_RESERVAS A 
						JOIN PRODUTOS_PACKS_PERMITIDOS B ON A.PRODUTO = B.PRODUTO AND A.COR_PRODUTO = B.COR_PRODUTO 
						JOIN PRODUTOS C ON A.PRODUTO = C.PRODUTO
						JOIN VENDAS_PRODUTO D ON A.PRODUTO = D.PRODUTO AND A.COR_PEDIDO = D.COR_PRODUTO AND A.ENTREGA = D.ENTREGA AND A.ITEM_PEDIDO = D.ITEM_PEDIDO AND A.PEDIDO = D.PEDIDO
					WHERE ROMANEIO = @ROMANEIO AND A.PEDIDO = @PEDIDO AND B.PRODUTO = @PRODUTO AND INDICA_PACK_COR = 1 AND PACK = @LETRA_PACK AND A.COR_PRODUTO = @COR_PRODUTO
				END				

				IF @STATUS <> 'D' AND @STATUS <> 'F'
					SELECT @STATUS = 'P'

				FETCH NEXT FROM CURSOR_ITENS INTO @CLIENTE_ATACADO, @PORCENTAGEM_QTDE, @PRIORIDADE, @TRANSP_REDESPACHO, @TRANSPORTADORA_CLIENTE
			END
		END
		CLOSE CURSOR_ITENS
		DEALLOCATE CURSOR_ITENS

		UPDATE ROMANEIOS_PRODUTO SET STATUS = @STATUS, FILTROS_PROCESSO = 'PROCESSO AUTOMÁTICO DE DISTRIBUIÇÃO.'
			WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL AND PRODUTO = @PRODUTO AND COR_PRODUTO = @COR_PRODUTO

	END
	FETCH NEXT FROM CURSOR_PRODUTOS INTO @PRODUTO, @COR_PRODUTO, @PEDIDO, @NUMERO_TAMANHOS, @PONTEIRO_PRECO_TAM, @VARIA_PRECO_COR, @VARIA_PRECO_TAM
END
CLOSE CURSOR_PRODUTOS
DEALLOCATE CURSOR_PRODUTOS
/* ATUALIZA PEDIDOS DE VENDA */
DECLARE CURSOR_PEDIDOS CURSOR FOR SELECT PEDIDO FROM VENDAS WHERE ROMANEIO = @ROMANEIO AND FILIAL = @FILIAL
OPEN CURSOR_PEDIDOS
FETCH NEXT FROM CURSOR_PEDIDOS INTO @PEDIDO_VENDA
WHILE @@FETCH_STATUS = 0
BEGIN
	EXECUTE ('LX_MOVIMENTA_VENDAS_PA ' + @ASPAS + @PEDIDO_VENDA + @ASPAS)
	FETCH NEXT FROM CURSOR_PEDIDOS INTO @PEDIDO_VENDA
END
CLOSE CURSOR_PEDIDOS
DEALLOCATE CURSOR_PEDIDOS
/*DROP TABLE #TMP_ESTOQUE_DISTRIBUICAO*/

COMMIT TRANSACTION 

RETURN


ERROR:
	CLOSE CURSOR_PRODUTOS
	DEALLOCATE CURSOR_PRODUTOS
	CLOSE CURSOR_ITENS
	DEALLOCATE CURSOR_ITENS

	WHILE @@TRANCOUNT > 0
		ROLLBACK TRANSACTION 

    RAISERROR @ERRNO @ERRMSG
END



